Wiemy, że ViewTreeObserver służy do rejestracji słuchaczy, którzy mogą otrzymywać powiadomienia o zmianach globalnych w drzewie widoku. Istnieją dwie metody zdefiniowane w tej klasie: addOnGlobalLayoutListener(ViewTreeObserver.OnGlobalLayoutListener
słuchacza) i addOnPreDrawListener(ViewTreeObserver.OnPreDrawListener listener)
. Ale cel tych metod nie jest dla mnie zrozumiały, co opisałem na stronie programisty. Próbowałem to zrozumieć, a także wyszukiwać w Google, ale nie udało mi się znaleźć jasnego obrazu na ten temat. Każda pomoc jest dla mnie bardzo garstka.Różnica między addonGlobalLayoutListener i addOnPreDrawListener
5
A
Odpowiedz
4
OnPreDrawListener
Zostaje wywołana metoda wywoływana tuż przed wywołaniem metody onDraw(). W tym momencie wszystkie widoki w drzewie zostały zmierzone i otrzymały ramkę. Można zatem pogląd prawidłowo manipulować w ten zwrotnego
OnGlobalLayoutListener
Ten słuchacz dostaje nazwie: - Podczas zmiany stanu widoczności. W przykładzie, gdy widok został narysowany, staje się widoczny i zostaje wywołany. - po dodaniu widoku zmiany drzewa widoku
Powiązane problemy
- 1. view.getViewTreeObserver(). AddOnGlobalLayoutListener wycieki Fragment
- 2. Różnica między unwrapObservable i()
- 3. Różnica między "**/* /" i "** /"?
- 4. Różnica między | = i^= css
- 5. Composer.phar różnica między | i ||
- 6. Różnica między "% ~ dp0" i ". \"?
- 7. Różnica między ". +" I ". +?"
- 8. MySQL: Różnica między ",", "i"
- 9. Różnica między (++ i) oraz (i ++)
- 10. Różnica kręgosłupa Różnica między CompositeView i CollectionView?
- 11. Różnica między logger.info i logger.debug
- 12. Różnica między fgets i fscanf?
- 13. Różnica między NSLog i DLog
- 14. Różnica między RoutedEventHandler i EventHandler
- 15. Różnica między obrysem i wypełnieniem?
- 16. Różnica między Parameters.Add i Parameters.AddWithValue
- 17. Różnica między putback() i unget()
- 18. Różnica między Delegate.BeginInvoke i Thread.Start
- 19. Różnica między TVar i TMVar
- 20. Różnica między DatagramSocket i DatagramChannel
- 21. Różnica między intent.setClass() i intent.setComponent()
- 22. różnica między -lgcc_s i gcc
- 23. Różnica między string.ToLower i TextInfo.ToLower
- 24. Różnica między javax.sql i java.sql?
- 25. Różnica między paint() i paintcomponent()?
- 26. Różnica między app.all ("*") i app.use ("/")
- 27. Różnica między c() i append()
- 28. Różnica między KeyEventArgs.systemKey i KeyEventArgs.Key
- 29. Różnica między org.apache.spark.ml.classification i org.apache.spark.mllib.classification
- 30. Różnica między GotFocus i GotKeyboardFocus