例如,我有一个imageView 1,imageView 2和imageView3
在XML中,我使用相对布局对它们进行分组
eg.
imageView1:
below of 2
imageView3:
visiblity: gone
在某些行动后(在运行时间内)
eg.
imageView1:
below of 3
imageView3:
visiblity: visible
我觉得类似的东西,却找不到正确的语法
imageView1.setLayoutParams(new LayoutParams(Below));
感谢您的帮助
答案 0 :(得分:0)
您的API级别是什么?如果您偶然使用的是17的最小SDK,则可以使用removeRule(int verb)删除below of 2
,然后添加below of 3
。
否则,我所做的是为给定视图保留RelativeLayout.LayoutParams的两个实例。尝试这样的事情:
belowTwoParams.addRule(RelativeLayout.BELOW, 2.getId());
belowThreeParams.addRule(RelativeLayout.BELOW, 3.getId());
其中BelowTwoParams和belowThreeParams都是RelativeLayout.LayoutParams的实例。请记住,您的" 2"和" 3"在添加这些规则之前,视图需要具有有效的ID,在XML中或以编程方式设置。
之后,您只需致电imageView1.setLayoutParams(belowTwoParams //or belowThreeParams accordingly);