CoordinatorLayout(協(xié)調(diào)布局)
簡介:是組織它眾多子view之間互相協(xié)作的一個(gè)ViewGroup刁卜。CoordinatorLayout 的神奇之處就在于 Behavior 對象。CoordinatorLayout使用 Behavior 對象進(jìn)行通信曙咽,使得其子view之間知道了彼此的存在蛔趴,一個(gè)子view的變化可以通知到另一個(gè)子view。CoordinatorLayout 所做的事情就是當(dāng)成一個(gè)通信的橋梁例朱,連接不同的view孝情。
即:通過behavior協(xié)調(diào)Dependency(被依賴view)與child之間的關(guān)系
優(yōu)勢:通過behavior解耦Dependency與child(eg:比如多個(gè)child依賴一個(gè)主體,需要在主體的onTounchEvent處理多個(gè)child的邏輯洒嗤,代碼多耦合高)
簡單使用:
TempView是隨手指移動改變位置的Dependency箫荡,button作為依賴TempView存在的child
即:TempView移動,button做出相應(yīng)的位置變化
xml使用
自定義隨手指移動的view
自定義行為