2016-08-10 1 views
0

Nach dem doc, der erste istAndroid - Unterschied zwischen View.OnLayoutChangeListener und ViewTreeObserver.OnGlobalLayoutListener

Schnittstellendefinition für einen Rückruf, wenn die Layoutgrenzen einer Ansicht, die Änderungen aufgrund der Layoutverarbeitung aufgerufen werden.

und die zweite ist

Schnittstellendefinition für einen Rückruf, wenn der globale Layoutzustand oder die Sichtbarkeit der Ansichten innerhalb der Ansicht Baum Änderungen aufgerufen werden.

///

Aber sie scheinen mir ziemlich ähnlich. Ich war sogar in der Lage, beide austauschbar zu benutzen. Kann mir jemand ein praktisches Beispiel für ihre Verwendung geben? Dank

Antwort

6

Ein OnLayoutChangeListener ein Zuhörer für einen bestimmten View und wird nur ausgelöst, wenn das View einem Layout Pass durchläuft (d.h. onLayout() genannt wird).

Ein OnGlobalLayoutListener die gesamte Hierarchie für Layoutänderungen beobachtet (so eine davon auf jedem View in einer Hierarchie Registrierung wird es dazu führen, ausgelöst werden, wenn ein View in dieser Hierarchie gelegt wird oder Veränderungen Sichtbarkeit).

Verwandte Themen