前言
該博客是講解自定義的view的基礎學習,適用於android的開發,自定義view是每個android程序員必須具備的技能,讓我們來一起學習一下吧
座標系
一.屏幕座標系和數學座標系的區別
由於移動設備一般定義屏幕的左上角爲座標原點,向右的方向爲x軸增大的方向,向下爲y軸增大方向,所以手機屏幕的座標系和數學中常見的座標系是稍微有差別的 。兩個座標系如下圖:
實際屏幕上的默認的座標系如下圖:
二. View的座標系
注意:View的座標系統是相對於父控件而言的。
getTop() //獲取的是view左上角距離父view頂部的距離
getBottom() //獲取的是view右下角距離父view頂部的距離
getLeft() //獲取的是view左上角距離父view左側的距離
getRight() //獲取的是view右下角距離父view左側的距離
如下圖
三 .MotionEvent中的get和getRaw的區別
event.getX() //觸摸點相對於其所在的組件座標系的座標
event.getY()
event.getRawX() //觸摸點相對於屏幕默認座標系的座標
event.getRawY()
如下圖:
四。要點總結
- 屏幕座標系和數學座標系的區別
- view的座標系是相對於父控件而言的
- MtionEvent的get和 getRaw()的區別
角度和弧度
一。弧度和角度的定義
角度:兩條攝線從圓心向圓周射出,形成的夾角和夾角正對的弧,當這段弧長正好等於圓周長的360分之一時,兩條射線的夾角的大小爲1度.
弧度:兩條射線從圓心向圓周射出,形成一個夾角和夾角正對的一段弧。當這段弧長正好等於圓的半徑時,兩條射線的夾角大小爲1弧度.
角度和弧度的示意圖如下:
三.弧度和角度的換算關係
圓一週對應的角度爲360度(角度),對應的弧度爲2π弧度。
故得等價關係:360(角度) = 2π(弧度) ==> 180(角度) = π(弧度)
維基百科的公式:
rad是弧度 deg是角度
四.一些細節問題
由於默認屏幕座標系和常見數學座標系的小差別(座標系問題點這裏),所以在角上必然也會存在一些區別,例如:
在常見的數學座標系中角度增大方向爲逆時針,
在默認的屏幕座標系中角度增大方向爲順時針。
自定義View的顏色
android中的顏色包括顏色的定義和創建顏色的幾種方式,以及顏色的混合模式
一,幾種顏色的創建方式
二**.顏色的混合模式**