我在Xml中定义了两个图像视图。我希望动态地改变其中一个的位置而另一个保持不变。有什么建议。感谢名单。
答案 0 :(得分:1)
是的,当然,这很可能。使用LayouParam
ImageView img1=(ImageView) findViewById(R.id.imageview);
ImageView img2=(ImageView) findViewById(R.id.imageview);
RelativeLayout.LayoutParams lp2=new RelativeLayout.LayoutParams(100, 100);
lp2.addRule(RelativeLayout.ALIGN_RIGHT,img2.getId());
img1.setLayoutParams(lp2);
设置保证金
lp2.setMargins(Left, TOp, right,Bottom);
答案 1 :(得分:0)
您可以通过为RelativeLayout.LayoutParams
提供新规则来实现。做这样的事情:
RelativeLayout.LayoutParams params = imageView2.getLayoutParams();
params.addRule(RelativeLayout.CENTER_IN_PARENT);
imageView2.setLayoutParams(params);
答案 2 :(得分:0)
让我们假设你的imageView1保持不变,在父级中心对齐。并且您的第二个ImageView imageView2左对齐到imageView1,现在您想将它对齐到imageView1的下方。使用以下来实现相同的目的,
RelativeLayout.LayoutParams params = imageView2.getLayoutParams(); param.addRule(RelativeLayout.BELOW,R.id.imageView1); imageView2.setLayoutParams(PARAMS);
答案 3 :(得分:0)
使用如下布局属性:
imageView.layout(l,t,r,b);
l
代表左侧,t
代表顶级等等。