自定義控件流程

      看慕課網的視頻,整理了自定義控件的流程,從自定義屬性、測量、佈局、繪製、手勢事件、事件攔截等多個步驟。

      1.自定義屬性的聲明與獲取

      分析需要的自定義屬性,在res/values/attrs.xml定義聲明,在layout xml文件中進行使用,在view的構造方法中獲取。

       2.測量

       3種測量模式:exactly、at_most、unspecificed

       3.佈局

        決定子view的位置,儘可能將onmeasure中一些方法移動到此方法中,

        4.繪製onDraw

         繪製之線程:ui線程中更新界面用invalidate方法,子線程中更新用postinvalidate方法。

        Canvas.draw****,draw多種方法,圓 三角形 貝塞爾函數等,比較多,需要研究

        Canvas幾種動畫,translater 、rotate、scale、skew也會用到

        paint,該類保存了繪製幾何圖形、文本和位圖的樣式和顏色信息。也就是說我們可以使用Paint保存的樣式和顏色,來繪製圖形、文本和bitmap,這就是Paint的強大之處。

         save方法用於臨時保存畫布座標系統的狀態

         restore方法可以用來恢復save之後設置的狀態,

        5.ontouchevent

        觸摸事件處理,手勢事件監聽,包括move、up、down多種事件。

       6.onintercepttouchevent

        事件攔截,包括父控件攔截子控件事件,子控件要求父控件攔截事件等方法。

 

   

       

       

    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章