最近在学习自定义View,总是被View的显示的位置搞的一头雾水。对于一个View的位置,我比较迷惑:
- View在显示在哪个位置?
- View的宽和高的定义?
什么是View
View是Android中所有控件的基类,不管是Button或者TextView,还是LinearLayout或者ViewGroup,都继承于View。所以说,View是用户界面最基本的控件,用于创建交互式UI组件。
ViewGroup的字面意思是一组的View,其是View的子类,它是保存其他视图(或者其他ViewGroup),并定义其布局属性的容器。
在Android设计中,ViewGroup也继承了View,意味着View本身不仅是一个控件,其还是多个控件组成的一组控件。通过这些关系也就形成了我们所熟悉的View树形结构。
View的位置参数
在Android中,默认的View的形状都是矩形。也就是说,只要确定了View的左上顶点和右下顶点的坐标,我们就可以确定了View的位置。这两个顶点分别对应了View的四个属性:
- top:左上角纵坐标
- left:左上角横坐标
- bottom:右下角纵坐标
- right:右下角横坐标
值得注意的是,这里所说的坐标都是相对坐标,这些坐标都是相对于父容器来说的。在Android系统中,屏幕的左上角作为,整个坐标系的原点,x轴和y轴的正向分别为右和下,大部分的Android的系统都是按照这个坐标系来进行显示的。
上图中,