[size=x-large]RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp2.addRule(RelativeLayout.[color=red]POSITION_BELOW[/color], ID_BTN1);[/size]
为什么我自己写怎么没有RelativeLayout.POSITION_BELOW,只有RelativeLayout.BELOW,这两种设置的效果不一样,一种是并排在下面,一种的重叠的下面?请教高手!
RelativeLayout代码中设置属性
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 三岁的宁静 2011-04-06 11:21关注
我刚测试了一下,用below是可以实现的,只是你忽略了一个东西,注意一下这个ID_BTN1的值,你会发现,它的值是-1,是因为你并没有给你这个view setId()
RelativeLayout rl=new RelativeLayout(this); rl.setBackgroundColor(Color.BLUE); Button btn1=new Button(this); btn1.setText("btn1"); System.out.println(btn1.getId()); btn1.setId(123); Button btn2=new Button(this); btn2.setText("btn2"); rl.addView(btn1); rl.addView(btn2); RelativeLayout.LayoutParams lp=new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, RelativeLayout.TRUE); lp.addRule(RelativeLayout.ALIGN_PARENT_TOP, RelativeLayout.TRUE); btn1.setLayoutParams(lp); lp=new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); lp.addRule(RelativeLayout.BELOW, btn1.getId()); btn2.setLayoutParams(lp); setContentView(rl);
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 关于大棚监测的pcb板设计
- ¥20 sim800c模块 at指令及平台
- ¥15 stm32开发clion时遇到的编译问题
- ¥15 lna设计 源简并电感型共源放大器
- ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
- ¥15 Vue3地图和异步函数使用
- ¥15 C++ yoloV5改写遇到的问题
- ¥20 win11修改中文用户名路径
- ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
- ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计