Animáció átmenetek között a két fragmens

Animáció átmenetek között a két fragmens 19

  • 08.11.15 00:57 •
  • AStefanovskiy •
  • • # 270361
  • • Habrahabr
  • fordítás •
  • 10 •

- mint a Forbes, csak jobb.

Az egyik sarokköve az Anyag design értelmes mozgását a képernyők között. Lollipop támogatást nyújt formájában animációk, átmenetek közötti keret Activity és töredék. Mivel a cikkek ebben a témában nem annyira, elhatároztam, hogy írok a saját!







A végtermék igen egyszerű. Mi teszi az alkalmazás galériát tömítések. A részletek képernyő jelenik meg, ha rákattint a képre. Mivel a keret az átmenet egy rács kép az ablakban részletek kísérik animáció.

Ha azt szeretnénk, hogy mi történt - az elkészült alkalmazás GitHubról.


Van két hírem: a jó és a rossz. A rossz hír az, hogy a Lollipop előtt keret nem működik. Ennek ellenére, a probléma megoldódik a módszerek támogatása könyvtárak segítségével, amelyek segítségével végre animált átmenet rendelkezésre API 21+.

A cikk fogják használni, hogy támogassák a könyvtár funkcióit annak érdekében, hogy mozog a tartalmat.


Részletek az egyesület az első képernyőn, és a második kettős kötés van szükség. Lollipop azt javasolja, hogy „átmeneti neve” -nak a kapcsolatot a View.

Kétféleképpen hozzá a nevét az átmeneti (átmeneti név) a nézet:

  • A kód használható ViewCompat.setTransitionName (). Persze, akkor is egyszerűen hívja setTransitionName (). ha a támogatás kezdődik Lollipop.
  • Ahhoz, hogy hozzá XML, az attribútum android: transitionName.

Fontos megjegyezni, hogy egyetlen elrendezés (layout), átmenetek nevének egyedinek kell lennie. Tartsa ezt szem előtt, amikor szervező átmenetek. Rámutatva átmeneti nevet a ListView vagy RecyclerView kérni az azonos nevű és az összes többi elemet.


Beállítás FragmentTransactions kell nagyon ismerős:


használja addSharedElement () metódus - meghatározza, hogy milyen típusú nézet elmúlik fragmentumok között.

Részletek átadott addSharedElement () a nézet az első számtól szeretné osztani (részvény) a második rész. Neve átmenet itt a neve az átmenet az osztott (közös) kilátás a második töredék.


Végül eljött a pillanat, amikor megkérdezzük, animációk közötti átmenet töredékek.







A megosztott elemek:

  • A átmenet az első pályán, hogy a második használatra setSharedElementEnterTransition () módszer.
  • Ahhoz, hogy menjen vissza, használja setSharedElementReturnTransition () metódust. Animáció történik, ha megnyomja a vissza gombot.

Vegye figyelembe, hogy meg kell hívni ezeket a módszereket a második fragmentum, mert ha ezt az első - nem történik semmi.

Azt is animálni átmeneteket az összes nem megosztott nézet. Ezt a nézetet használja setEnterTransition (). setExitTransition (). setReturnTransition (). és setReenterTransition () a megfelelő fragmenseket.

A fenti módszerek mindegyike Transition felvesz egy paramétert elvégzésére az animációt.

mi lesz nagyon könnyű létrehozni egy animáció. Mi használja az egyéni átmenet a kép mozgását (erről bővebben később), és az eltűnés (Fade) kilépés.


Android biztosít néhány kész animációs átmenetek, amelyek alkalmasak a legtöbb esetben. Fade végez eltűnése animáció. Diaátmenet animál megjelenése / eltűnése kicsúszását a képernyő szög. Felrobbant animáció hasonló robbanás, a kép mozog a képernyő szélein. Végül AutoTransition hogy a kép elhalványul, mozgatni és átméretezni. Ez csak néhány példa a csomagot, valójában sokkal több!

Említettem már, hogy szükségünk van egy egyéni átmenet a képet. Itt is van:


Mi egyéni átmenet nem más, mint egy három átmenetek készen összeállítva:

  • ChangeBounds animál határ (helyzetét és méretét) véleményünk.
  • ChangeTransform animál skálán véli, a szülők.
  • ChangeImageTransform lehetővé teszi számunkra, hogy megváltoztatja a méretét (és / vagy a típusú skála) a mi kép

Ha szeretné tudni, hogy hárman egymásra, próbálja játszani az alkalmazás, viszont eltávolítása az egyik, majd a másik animációs, figyeli az összes kedvezményt.

Ön is létrehozhat bonyolultabb animációk segítségével XML. Ha inkább az XML, akkor lesz érdekelt, hogy a dokumentáció az android Transition honlapján.


A kód, amely végül is kiderült, egészen egyszerű volt:


Ez az! Egy egyszerű módja annak, hogy végre animáció közötti átmenetet két fragmentum kész!

Őszintén szólva mindig feldühödött ezt animáció az új Android. Ő nincs valódi értelme, mert tudjuk, hogy a valóságban, vagy a kártya, vagy egy tárgy nem egyenletes, vagy elpárolog.
Akkor milyen animáció érdemes használni? Én személy szerint nem tudom. Én is nagyon boldog, hogy hallja a választ a kérdésére professzionális tervezők és általában senkinek :)

A Biblia leírása animáció script.
1. Először is ott volt a szó. (Label)
...
Plusz 10 módosítás a Disney.

Sajnáljuk, de ez egyszerű: a változás előtt volt azonnali kép, ami kedvét a további. Most helyébe éles váltás sima animáció, ami volt érzékelhető, mint egy nagyon szép javulást.
De általában, ha úgy gondolja, a probléma pusztán pszichológiai, mint a mozi általában - nem tudjuk figyelmen kívül hagyni a valóságot előre a változás a képet, és a kép jön hozzánk, változékony, mind a tetteink, nem a mi erőfeszítéseinket.

És valóban - azt javasoljuk, hogy egy jobb hatást - nem változik, és az átalakulás a képet. majd egy több hasonló kép. Ez közelebb lenne a középkori mágikus :)

Ez az animáció rendkívül kétséges, hogy anyaga design. Minden, ami megtörténhet, le van írva a útmutató a google. Sokkal logikusabb kell tekinteni, mint egy fénykép kártya, amely kezdetben méretezhető együtt fényképet, majd húzódik szét (csak háttér), és a szöveg jelenik meg az üres helyére.




Kapcsolódó cikkek