2016-10-12 36 views
20

Chcę animować widok ShadowView do niektórych współrzędnych (do widoku docelowego).Android - Przeciąganie i upuszczanie - cień animacji do miejsca docelowego

Używam D & D i jeśli użytkownik upuszcza (DragEvent.ACTION_DROP) to widok w pewnym obszarze chcę animować widok (z miejsca upuszczenia) do widoku docelowego.

Nie chcę animować widoku z lokalizacji źródłowej, ale chcę zrobić z położenia DROP.

Próbowałem wielu rzeczy, ale nic nie działa. Jak mogę uzyskać dostęp do ShadowView? To także nie działa:

EventDragShadowBuilder.getView() 

myślę TranslateAnimation powinien pracować na to, ale muszę dostęp do „cienia” widok podczas D & D.

Obrazek: enter image description here

+1

Nie sądzę, że możesz uzyskać dostęp do ShadowView. Jeśli uda Ci się uzyskać upuszczoną lokalizację, możesz utworzyć duplikat Zobacz siebie z tym samym tłem co ShadowView i animuj ten zduplikowany widok do miejsca docelowego, dając iluzję, że ShdowView się porusza. –

Odpowiedz

0

Możliwym rzeczą, jaką być

po zakończeniu przeciągania, można przenieść "widok" do lokalizacji kropli, a następnie można uruchomić animację, aby przenieść widok z upuszczonej lokalizacji do miejsca docelowego.

Należy pamiętać, że cień przeciągania nie jest animowany, ale sam widok jest animowany.

0

Aby obejść ten problem, można spróbować dodać selektor z przezroczystymi i czarnymi gradientami, zależnie od odpowiedniego stanu. W takim przypadku zdecydujesz, kiedy twój "cień" powinien zostać pokazany i kiedy powinien zniknąć.

Oto jest pytanie o „Shadow” graniczy układów: Android LinearLayout : Add border with shadow around a linearLayout

Nie pewien, czy to dobry sposób ... Ale to może działać. Powodzenia!