android开发,程序中如何修改控件的相对布局

现在我有了一个RelativeLayout,这之中放了一个button。我要在java程序中,添加一个新的button放在这个button之上。怎么做?xml文件<Rel... 现在我有了一个RelativeLayout,这之中放了一个button。我要在java程序中,添加一个新的button放在这个button之上。怎么做?
xml文件
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/RelatLyt">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Add" />

</RelativeLayout>

注意,是在java程序中动态添加,不是在xml文件里添加。而且动态添加的控件要有参数android:layout_above="@+id/button1"
展开
 我来答
longxu127
推荐于2018-04-13 · 超过19用户采纳过TA的回答
知道答主
回答量:94
采纳率:0%
帮助的人:45.5万
展开全部
RelativeLayout layout =(RelativeLayout) findViewById(R.id.layout);
Button but = new Button(this);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(50,50);
lp.addRule(RelativeLayout.ALIGN_TOP,R.id.button);
lp.addRule(RelativeLayout.ALIGN_RIGHT,R.id.button);
layout.addView(but, lp);

关键是 addRule 方法 看代码很显然,是指定对齐button的顶端和右端。

另一种思路是,先在xml里配置好两个button。不过先把上面的button的visibility 设置为gone,用到的时候在java代码里设置为visible。
wicked_Harmous
2012-11-07 · TA获得超过690个赞
知道小有建树答主
回答量:229
采纳率:0%
帮助的人:218万
展开全部
在它上面盖一个button代码是可以实现的,但是你说的above,真的没试过。
既然是要多个button出现,那么xml里面肯定是可以实现的,你可以再一个位置添加N个button,显示一个,隐藏其他就行,不明白你在一个按钮上叠一个按钮显示干什么?难道你要在一个位置同时显示2个甚至多个按钮,都可以实现点击效果?
追问
在它之上的意思不是重叠在上面,而是相对布局android:layout_above="@+id/button1"
追答
above就是盖在上面啊,在id/button1这个按钮的上面,是这个意思,我想是你对相对布局理解有些误区。相对布局在多个按钮重叠在一个位置显示是很常用的,我想你的需求用显示某个按钮,隐藏其他按钮应该能解决。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
醉癫疯的AK
2012-11-07
知道答主
回答量:33
采纳率:0%
帮助的人:11.7万
展开全部
你要在java程序中创建relativeLayout对象,定义一个Button对象,实现它们就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yzx503319102
2012-11-07
知道答主
回答量:51
采纳率:0%
帮助的人:23.7万
展开全部
同学,我的建议是你先说一下你要实现的效果吧,你的思路或许不对,现在很少有这样搞布局文件的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式