最近在看《Android開發藝術探索》,把看到的一些知識在這裡做一個筆記。
-
什麼是View
View是界面層的一種抽象,它代表了一個控件,ViewGroup是一組控件
-
View的位置參數
View的坐标是一種相對坐标,相對于父容器而言,在Android中,X軸和Y軸的正方向分别為右和下,一般通過getX(),getY(),setX(),setY()的方法得到和設定位置參數,
具體看下面這張草圖
裡面的小長方形為View,外面的大長方形為ViewGroup,
則View的寬為width=bottom-top;
View的高為height=right-left;
Android3.0之後View增加了幾個額外的參數,X,Y,translationX,translationY,其中左上角的坐标為x,y,translationX,translationY為左上角相對于父容器的偏移量,四個參數的關系為
X=left+translationX(右正左負);
Y=right+translationY(下正上負);
top和left表示的是原始位置的坐标,改變的是X,Y和translationX,translationY;
-
View事件的分發機制(簡單記一下,太多了)
public void dispatchTouchEvent(MotionEvent ev)用來進行事件的分發,隻要事件傳遞給目前的View就會觸發該方法,傳回結果受onTouchEvent和下級的dispatchEouchEvent方法影響,表示是否消耗該事件。
ok,暫時記到這,等看了再記。