首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从代码中动态设置layout_weight属性?

如何从代码中动态设置layout_weight属性?
EN

Stack Overflow用户
提问于 2011-01-10 02:55:01
回答 9查看 244.2K关注 0票数 290

如何在java代码中动态设置android中按钮的属性layout_weight的值?

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2011-01-10 03:05:59

您可以将其作为LinearLayout.LayoutParams构造函数的一部分进行传递:

代码语言:javascript
复制
LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(
    LayoutParams.MATCH_PARENT,
    LayoutParams.MATCH_PARENT,
    1.0f
);
YOUR_VIEW.setLayoutParams(param);

最后一个参数是权重。

票数 527
EN

Stack Overflow用户

发布于 2011-01-10 03:07:33

使用LinearLayout.LayoutParams

代码语言:javascript
复制
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
    LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT);
params.weight = 1.0f;
Button button = new Button(this);
button.setLayoutParams(params);

编辑:啊,Erich的答案更简单!

票数 130
EN

Stack Overflow用户

发布于 2014-06-02 21:50:28

如果您已经在布局(Xml)文件中定义了视图,则只需以编程方式更改权重,这种方式会更好

代码语言:javascript
复制
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)   
mButton.getLayoutParams();
params.weight = 1.0f;
mButton.setLayoutParams(params);

新建一个LayoutParams会覆盖xml文件中定义的其他参数,比如边距,或者您需要在LayoutParams中指定所有参数。

票数 88
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4641072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档