1.Android View简介:
View是Android所有控件的基类,同时ViewGroup也是继承自View,看下面这张图我们就会有一个直观的了解:
Android应用的所有UI组件都是继承了View类,View组件非常类似于Swing编程的JPanel,它表示一个空白的矩形区域。View类还有一个很重要的子类:ViewGroup,但是ViewGroup通常作为其他组件的容器使用。Android的所有UI组件都是建立在View、ViewGroup基础之上的,Android采用了“组合器”模式来设计View和ViewGroup:ViewGroup是View的子类,因此ViewGroup也可以被当做View使用。对于一个Android应用的图形用户界面来说,ViewGroup作为容器来盛装其他组件,而ViewGroup里除了可以包含普通View组件之外,还可以再次包含ViewGroup组件。
简单的说View是所有控件的“祖宗”,无论TextView、Button、Linearlayout,还是ListView、RecycleView,他们的基类都是View,多个View形成了ViewGroup,ViewGroup本身也是View,比如,TextView是一个View,LinearLayout是一个ViewGroup,ViewGroup中又可以添加许多View。
知道了View的层级关系有助于对View的理解,从上图可以发现我们常用的这些控件都是继承于View,如果我们更好的掌握了View的知识体系,那么我们在界面编程时则会更加的得心应手。
2.Android坐标系
View坐标是相对于View的父容器来讲的,View看作一个矩形,则View的左上角坐标为(left,top),Vew的右下角的坐标为(right,top),View如果发生改变,这四个值并不会发生改变,改变的是View的偏移量。