Legg til egendefinerte overganger i varslingsdialogene til Android

Ok, jeg innrømmer det: folkene på Google ødelegger meg. De mange hjelper- og byggeklassene som tilbys for Android-utvikling gjør rutinemessige brukergrensesnittoppgaver så enkle, det er lett å overse de dypere mulighetene til de innkapslede klassene.

Varslingsdialogen og dens byggherre er et flott eksempel. Selv om det ikke er noe galt med standarddialogen, kan du, hvis du ser lenger enn den grunnleggende funksjonaliteten til byggherren, tilpasse den underliggende varslingsdialogen et antall måter før du påkaller showet.

Følgende eksempel viser hvordan du erstatter de tilknyttede av og på skjermovergangene av en varselsdialog med ditt eget XML-animasjonssett. Du kan følge med trinnvise instruksjoner, eller laste ned og importere hele prosjektet direkte til Eclipse.

1. Opprett et nytt Android-prosjekt i Eclipse. Målrett Android 2.2 eller nyere.

2. Endre Activity_main.xml i mappen / res / layout for å inkludere en knapp og en etikett.

activity_main.xml

 "http://schemas.android.com/apk/res/android" xmlns: tools = "http://schemas.android.com/tools" android: layout_width = "match_parent" android: layout_height = "match_parent" android: paddingBottom = "@ dimen / Activity_vertical_margin" android: paddingLeft = "@ dimen / Activity_horizontal_margin" android: paddingRight = "@ dimen / Activity_horizontal_margin" android: paddingTop = "@ dimen / Activity_vertical_margin" verktøy: context = ".MainActivity" > 
android: id = "@ + id / knapp1"

android: layout_width = "wrap_content"

android: layout_height = "wrap_content"

android: layout_alignParentBottom = "sant"

android: layout_centerHorizontal = "true"

android: layout_marginBottom = "94dp"

android: text = "Vis dialog" />
android: layout_width = "wrap_content"

android: layout_height = "wrap_content"

android: layout_alignParentTop = "sant"

android: layout_centerHorizontal = "true"

android: layout_marginTop = "46dp"

android: text = "Animert dialogprøve" />

3. Opprett en katalog som heter "anim" i mappen / res. Vi vil legge til to filer: slide_in_left.xml og slide_out_right.xml.

slide_in_left.xml

 "1.0" encoding = "utf-8" ?> 

"Http://schemas.android.com/apk/res/android"

android: fromXDelta = "100% p" android: toXDelta = "0"

android: varighet = "500" />
 slide_out_right.xml 

"1.0" encoding = "utf-8" ?>

"Http://schemas.android.com/apk/res/android"

android: fromXDelta = "0" android: toXDelta = "100% p"

android: varighet = "500" />

4. Åpne filen /res/values/style.xml og legg til en ny stilnode kalt dialog_animasjon. Det er her vi bare drar inn de tidligere definerte animasjonene i en enkelt ressurs vi kan bruke på et vindu.

styles.xml