Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别

Android——如何理解控件的宽高及layout_grivaty与grivaty的区别

关于Layout_width/height引发的宽高思考

方式一:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


结果不符合预期。

运行结果:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别



方式二:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


结果符合预期。

如下图:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别



Android控件宽高的规则:  

Android下的控件默认没有宽高,是由父控件给其宽高的。

其中一般的view控件是由(ViewGroup控件:LinearLayout、RelativeLayout 、TableLayout、FrameLayout 、AbsoluteLayou )五大布局给其宽高的。

而像LinearLayout、RelativeLayout等这些最外层的布局控件的宽高是由Android系统的FrameLayout控件设定的。可用android-sdk/tools下的工具hierarchyviewer.bat查看,如下图:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


针对方式一的修改方案,如下代码:


Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


运行结果如下:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别



layout_grivaty与grivaty


layout_grivaty使用时的注意点:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


结果如下图:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别



Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别


结果如下图:

Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别



区别:


Android——怎么理解控件的宽高及layout_grivaty与grivaty的区别




1楼NoMasp昨天 23:33
首页简直要被安卓刷屏了……
Re: wuseyukui3小时前
回复NoMaspn哈哈