2017-10-18 57 views
1

我有一個視圖A與另一個視圖B有依賴關係。當我試圖隱藏視圖B時,視圖A的位置仍然相同。如果視圖B的可見性爲GONE,視圖A應該更新其位置,理想情況是。更新從屬視圖隱藏在coordinatorLayout中時的目標視圖位置

在視圖行爲中,存在一個名爲onDependentViewChanged()的方法,但基於此方法的註釋,只有在視圖B的位置發生更改時,纔會更改視圖A的位置。但我不想改變視圖B的位置,只是隱藏它。

所以,如果我想更新視圖A的位置,當視圖B隱藏時,我將如何做到這一點。

感謝

====

我也試圖與更新內部onDependentViewRemoved的觀點,但不知道爲什麼這種方法不會被調用

回答

0

找到了解決辦法,檢查的源代碼後, CoordinatorLayout,發現一個接口方法onLayoutChild()是我想要的。只需在自定義行爲文件中實現此方法,並在此方法內,根據相關視圖的可見性更新目標視圖的位置。