View是Android中所有控件的基类。因此学好对于学习android来讲有着很重要的意义。
那么,关于view,我们都需要哪些知识呢?我们从最基本的学起。
我们都知道,Activity承担着可视化的功能,而展现在activity中的内容,就是我们的view了。TextView,Button,Linerlayout等等,都是系统事先为我们定义好的view,已经拥有了自己的模样。但是显然,不管是为了功能还是美观,系统定义的view都不够我们使用,因此我们必须要去自己定义我们需要的view。但是我们要如何定义自己的view呢?鲁迅说:我不知道。。。 那么,我们看看系统为我们制定了哪些关于view的铺垫。
在android中,X和Y轴的正方向分别为向右和向下,即以左上角为原点。而一个view的位置则由它的四个顶点来决定,left,top,right,bottom。其中,left和top为左上角的横纵坐标,right和bottom为右下角的横纵坐标。这些坐标都是相对于view 的父容器来讲的,属于相对坐标。下面是我画的坐标位置的图,比较浅而易懂。
android系统中也封装了获取这几个参数的方法。
LEFT = getLeft(); RIGHT = getRight(); TOP = getTop(); BOTTOM = getBottom();
那么我们经常在代码中获取view 的滑动事件时会用动到x,y,translationX,translationY这样的坐标。那这里的x,y,translationX,translationY是什么呢?
x,y是view左上角的坐标,其值会随着view 的移动而改变。而translationX,translationY是view左上角相对于父容器的偏移量,默认值是0.
这些参数都是相对于父容器的坐标相对而言的,并且具有下面的关系。
x= LEFT + translationX; y = TOP + translationY;
当view在移动过程中,LEFT和TOP是不变的,即它们的值在view的创建过程中就已经定义了且不会改变。而x,y会随着translationX,translationY的偏移而变化。
以上是view关于坐标方面的知识,明天我打算从view 的移动来入手。