2010-06-21 31 views
28

Ho un widget che avvia un'attività quando viene fatto clic. Mi piacerebbe avere una sorta di animazione di fantasia per visualizzare questa attività, piuttosto che lo scorrimento standard da destra di Android. Ho problemi a settarlo, comunque. Questo è quello che ho:Visualizzazione dell'attività con animazione personalizzata

slide_top_to_bottom.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator"> 
    <translate android:fromYDelta="-100%" android:toXDelta="0" android:duration="100" /> 
    <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="50" /> 
</set> 

..., che viene fatto riferimento nel anim.xml

<?xml version="1.0" encoding="utf-8"?> 
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android" 
     android:delay="50%" 
     android:animation="@anim/slide_top_to_bottom" /> 

Ma allora dove posso fanno riferimento di? Ho provato sia l'elemento base dell'attività voglio scivolare in, e l'ingresso del activitiy nel manifesto, entrambe le volte con

android:layoutAnimation="@+anim/anim" 

Potrei fare questo tutto sbagliato. Ogni aiuto è molto apprezzato!

risposta

51

È possibile creare un tema personalizzato con un riferimento alla propria animazione e applicarlo alla vostra attività nel file manifest. Sono riuscito ad applicare un'animazione personalizzata per una finestra mobile utilizzando la seguente definizione di stile. Potresti essere in grado di fare qualcosa di simile impostando il genitore del tuo stile come "@android: style/Animation.Activity"

Guarda i seguenti file per ulteriori dettagli su cosa puoi ignorare.

https://github.com/android/platform_frameworks_base/blob/master/core/res/res/values/styles.xml https://github.com/android/platform_frameworks_base/blob/master/core/res/res/values/themes.xml

Ecco la mia una parte del mio styles.xml e manifest.xml

styles.xml

Manifest.xml

<activity 
     android:name="com.me.activity.MyActivity" 
     android:label="@string/display_name" 
     android:theme="@style/MyTheme"> 
    </activity> 
+0

Grazie, questo ha reso la mia giornata! Il '