永发信息网

Android如何实现类似下面的布局。

答案:2  悬赏:70  手机版
解决时间 2021-01-04 08:55
  • 提问者网友:龅牙恐龙妹
  • 2021-01-03 12:56
短框是一个view 长框也是一个view 然后点击短框的view在他下面会出现长框。 短框是按照每行4个根据数量依次排列的.是可变长的。 这样的布局android里面有什么控件可以结合实现的吗?
最佳答案
  • 五星知识达人网友:千杯敬自由
  • 2021-01-03 13:09
个无聊有点笨的方法,点击一个然后向底下的view显示,然后给个对应的背景图,写个并排4个button,然后下面一个长的view隐藏,需要几排include几个
全部回答
  • 1楼网友:人间朝暮
  • 2021-01-03 14:22
你的问题应该是要动态生成空间吧。 下面的答案可以参考下。 首先要却这个界面的布局,是absolutelayout,relativelayout还是其他,然后就可以再里面添加控件了: public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); //确定界面的布局 absolutelayout abslayout=new absolutelayout (this); setcontentview(abslayout); //创建一个button按钮 button btn1 = new button(this); btn1.settext(”this is a button”); btn1.setid(1); //确定这个控件的大小和位置 absolutelayout.layoutparams lp1 = new absolutelayout.layoutparams( viewgroup.layoutparams.wrap_content, viewgroup.layoutparams.wrap_content, 0,100); abslayout.addview(btn1, lp1 ); } 一个界面可以布置一个布局,可以多个布局一起设计: public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); //设置界面的布局 relativelayout relativelayout = new relativelayout(this); setcontentview(relativelayout); //添加一个absolutelayout子布局,并给这个布局添加一个button absolutelayout abslayout=new absolutelayout (this); abslayout.setid(11); button btn1 = new button(this); btn1.settext(”this is a abslayout button”); btn1.setid(1); absolutelayout.layoutparams lp0 = new absolutelayout.layoutparams(viewgroup.layoutparams.wrap_content, viewgroup.layoutparams.wrap_content,100,0); abslayout.addview(btn1, lp0 ); //将这个子布局添加到主布局中 relativelayout.layoutparams lp1 = new relativelayout.layoutparams(viewgroup.layoutparams.wrap_content, viewgroup.layoutparams.wrap_content); lp1.addrule(relativelayout.align_parent_top); lp1.addrule(relativelayout.center_horizontal, relativelayout.true); relativelayout.addview(abslayout ,lp1); //再添加一个子布局 relativelayout relativelayout1 = new relativelayout(this); button btn2 = new button(this); btn2.settext(”this is a relativelayout1 button”); btn2.setid(2); relativelayout.layoutparams lp2 = new relativelayout.layoutparams(viewgroup.layoutparams.fill_parent, viewgroup.layoutparams.wrap_content); lp2.addrule(relativelayout.align_parent_top); lp2.addrule(relativelayout.center_horizontal, relativelayout.true); relativelayout1.addview(btn2 ,lp2); //将这个布局添加到主布局中 relativelayout.layoutparams lp11 = new relativelayout.layoutparams(viewgroup.layoutparams.wrap_content, viewgroup.layoutparams.wrap_content); lp11.addrule(relativelayout.below ,11); relativelayout.addview(relativelayout1 ,lp11); }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯