天天看點

Android中自定義View、ViewGroup理論基礎詳解

Android自身提供了許多widgets,但是有時候這些widgets并不能滿足我們的需求,這時我們就需要自定義View,本文會詳細說明自定義View的各種理論基礎,隻有了解了這些知識,我們才能更好地實作各種功能的控件。

我覺得自定義View中最重要的部分就是繪圖和互動,自定義的繪圖使得你的View與衆不同,互動使使用者可以與你的View進行互動,而繪圖的前提是View的量算與布局,互動的基礎是觸摸事件,是以量算、布局、繪圖、觸摸事件這些是自定義View的核心。

除此之外,一個設計友好的自定義View還應該可以像Android中自帶的widget一樣在XML中定義屬性,本文也會對此進行介紹。

  • 量算、布局及繪圖機制概述

    Android中View的量算、布局及繪圖機制

  • 量算

    源碼解析Android中View的measure量算過程

  • 布局

    源碼解析Android中View的layout布局過程

  • 繪圖

    Android中Canvas繪圖基礎詳解(附源碼下載下傳)

    Android中Canvas繪圖之PorterDuffXfermode使用及工作原理詳解

    Android中Canvas繪圖之Shader使用圖文詳解

    Android中Canvas繪圖之MaskFilter圖文詳解(附源碼下載下傳)

    Android中GPU硬體加速控制及其在2D圖形繪制上的局限

    圖文詳解Andorid中用Shape定義GradientDrawable

  • 觸摸事件

    Android中的MotionEvent

    Android中TouchEvent觸摸事件機制

  • 定義XML屬性

    Android中View自定義XML屬性詳解以及R.attr與R.styleable的差別

  • 執行個體

    [GitHub開源]Android自定義View實作微信打飛機遊戲

希望本文對大家有所幫助,後面會多寫一些自定義View執行個體的文章。

相關閱讀:

我的Android博文整理彙總