布局
View的关系
一个界面只能有一个根view,ViewGroup是也是一种view,通常用来作为多个view的容器, 进行界面布局,它是矩形的 。view和view间的关系,父子,兄弟关系,就像XML的结构一样。同样的可以多级的嵌套。
ViewGroup继承于View,实现了ViewParent和ViewManager接口,可作为容器view的view继承了ViewGroup,而普通的view则直接继承View并且没有实现那2个接口,因此所有view【类没有定义为final】都可以通过继承后实现ViewParent和ViewManager接口变为容器view,很多自定的view其实都是用过继承,实现多个接口来做出想要的功能的。
布局方式【待补充】
主要的布局方式有:
LinearLayout,RelativeLayout,Grid View,List View,Recycler View。
子view的大小设置方式:
- 固定宽高:设置一个固定值,超出部分会被截去。
- 设置为wrap-content,会自适应view的内容大小。
- 设置为match-parent,会和父view一样的尺寸。
**宽高可以分别设置**
权重layout-weight
view有布局权重,权重越大,所能分配到的父view的剩余空间越大,权重相等,会平分剩余的空间。可以用来作为布局中视图的均匀分布【垂直或水平】。