如果ViewGroup的宽度在xml中是’match_parent’’fill_parent’,那么Button的set-setWidth()不起作用?

如果ViewGroup的宽度在xml中是’match_parent’’fill_parent’,那么Button的set-setWidth()不起作用?,第1张

概述我在activity_main.xml中将LinearLayout定义为根元素.情况1:从onCreate()我尝试在这个垂直LinearLayout中添加Button,让我困惑的是,根据Google的API,我尝试在按钮上调用setWidth(20)然后在ViewGroup中添加它,但Button占用宽度'match_parent'而不是20dp.

我在activity_main.xml中将linearLayout定义为根元素.

情况1:从onCreate()我尝试在这个垂直linearLayout中添加button,让我困惑的是,根据Google的API,我尝试在按钮上调用setWIDth(20)然后在VIEwGroup中添加它,但button占用宽度’match_parent’而不是20dp.

    

情况2:在将linearLayout的layout_wIDth设置为’wrap_content’并调用setWIDth(20)时,它现在被认为是给定的显式宽度值,即20dp.

情况3:最后,删除我对setWIDth(20)的自定义调用,button获取宽度为’wrap_content’.

问:所以在案例2中很清楚,如果我希望明确使用setWIDth()方法,则不需要使用LayoutParams.然后在案例4中:即linearLayout的宽度设置为’match_parent’而button.setWIDth(20)是也被称为.
但是为什么button仍没有明确给定宽度值,再次输出与CASE 1完全相同.

提前致谢.

最佳答案您需要为按钮视图定义适当的LayoutParams.然后将其添加到firstLayout.

LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);params.height = XX;params.wIDth = XX;button.setLayoutParams(params);
总结

以上是内存溢出为你收集整理的如果ViewGroup的宽度在xml中是’match_parent’/’fill_parent’,那么Button的set-setWidth()不起作用?全部内容,希望文章能够帮你解决如果ViewGroup的宽度在xml中是’match_parent’/’fill_parent’,那么Button的set-setWidth()不起作用?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1139214.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)