Pracuję z wersją CoordinatorLayout
, w której pozycje widoków podrzędnych są animowane za pomocą interfejsów API ViewCompat.offsetLeftAndRight
i .Różnica między setTranslationX/Y i offsetLeftAndRight/offsetTopAndBottom?
Po dodaniu lub usunięciu widoku podrzędnego z CoordinatorLayout
, operacja układu resetuje pozycję każdego dziecka do lewego górnego rogu ekranu, tj. Bez żadnego przesunięcia.
To rozwiązanie zapewnia rozwiązanie article, ustawiając detektor układu na widoku podrzędnym i przywracając stare pozycje.
Zauważyłem, że przy użyciu interfejsów API setTranslationX
i setTranslationY
ten problem nie występuje. Dzieci zachowują swoją pozycję po zdarzeniach układu nadrzędnego.
W jaki sposób powinienem zdecydować się między tymi dwoma zestawami interfejsów API do ustawiania moich widoków na ekranie? Uważam, że nie używam ich bez zrozumienia różnic. Nie zrozumiałem dobrze czytając oficjalną dokumentację.