3 回答
TA贡献1864条经验 获得超6个赞
您可以使用来访问任何LayoutParams代码View.getLayoutParams。您只需要非常了解LayoutParams您的访问权限即可。通常,通过检查包含对象ViewGroup是否具有LayoutParams内部子对象来实现,这就是您应该使用的子对象。您的情况是RelativeLayout.LayoutParams。您将使用RelativeLayout.LayoutParams#addRule(int verb)和RelativeLayout.LayoutParams#addRule(int verb, int anchor)
您可以通过以下代码获取它:
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams)button.getLayoutParams();
params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
params.addRule(RelativeLayout.LEFT_OF, R.id.id_to_be_left_of);
button.setLayoutParams(params); //causes layout update
TA贡献1943条经验 获得超7个赞
您需要为需要引用的按钮创建ID和ID:
btn1.setId(1);
您可以使用params变量将参数添加到布局中,我认为方法是
addRule()
,查看此LayoutParams
对象的android java文档 。
TA贡献1860条经验 获得超9个赞
要添加RelativeLayout值为true或false 的属性,请使用0false和RelativeLayout.TRUEtrue:
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) button.getLayoutParams()
params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT, RelativeLayout.TRUE)
不要紧,无论是否已经添加的属性,你仍然可以使用addRule(verb, subject)启用/禁用它。但是,您可以使用API 17后removeRule(verb),它只是的快捷方式addRule(verb, 0)。
- 3 回答
- 0 关注
- 841 浏览
添加回答
举报