在开发过程中,Android控件/控件属笥有好多都没有使用过,所以这里进行总结学习下 ^ ^
一:LinearLayout 线性布局属性
1)baselineAligned :该属性默认为true,设为false后将会阻止该布局管理器与它的子元素基线对齐
根据图上的布局,将此属性设为false,然后运行后的结果如下:
将此属性去掉/设置为true,运行结果如下:
根据以上事例,那基线也就显而易见了吧,说白了就是控件的显示是首先从底部对齐的,如果设为false那就从头部开始对齐,注:布局中控件的字体定义了大小是为了显示效果更明显,如果不定义字体大小则看不出具体变化。ps:线性布局为水平方向
2)baselineAlignedChildIndex:当前线性布局中的view按照哪个控件的基线对齐,下标从0开始
根据图中代码的设置,期望整个布局中第一个控件是按照子布局中第3个View的基线进行显示的,因此得到如下图所示结果:
注:baselineAlignedChildIndex属性只适应于控件类型为Button、TextView、EditView,如果布局中包含除此之外的控件,则其会报如下错误(不知道如何去得到基线):
3)divider:设置布局中控件间的分隔线与showDividers属性结合使用
showDividers的属性包括:
middle 在每一项中间添加分割线
end 在整体的最后一项添加分割线
beginning 在整体的最上方添加分割线
none 无
效果图:
shape文件内容:
注:以上divider属性需要使用@drawable来引用图片或者shape文件才能显示,使用color的话效果不变,shape文件中需要添加颜色及size的属性。showDividers中的属性可以根据需求进行更改,这里就不一一列举了。
4)weightSum:权重的总和
权重总和为8,而文字=‘第二个控件’的TextView权重为6,而另一个控件则占剩余的2个权重。
5)measureWithLargestChild:默认为false,当为true时,该布局中的所有view会按照最大的那个控件的宽/高为基准进行显示(前提:view中必须使用权重)
如图所示将measureWithLargestChild属性值设为true的时侯,根据布局的方向如果是垂直的话,那么文字多的控件有多高,其它控件所占的高度就会与它一样高;如果是水平的话,那就是宽相同。如果控件中没有使用weight权重的话,那就如文本为“第四个控件”一样无任何变化。
线性布局的属性就总结到这里,其它基础属性就不在这里闡述了,如有不准确的地方请勿喷!!
本文章多用图形与描述结合的形式进行总结,更为直观些。