View mit Animation öffnen

Chri

Chri

Fortgeschrittenes Mitglied
0
Hi Leute! Da bin ich wieder;)!
Hoffentlich mit einer banalen Frage!
Und zwar möchte ich einen View öffnen (mit startsActivity) und der soll nicht abgehackt erscheinen sondern schön einfließen;)

Kann man so was machen? Und wenn ja, muss man das dem Intent mitgeben oder ist das in der .xml Datei definiert?

mfg Chri
 
Nö, das hilft nicht wirklich!
Aber trotzdem Danke!

mfg Chri
 
Moin.

Hast Du Dir eigentlich mal die ApiDemos angesehen, die beim SDK dabei sind? Da gibt's auch Beispiele für Animationen. Das was Du vorhast, sollte möglich sein - sogar ohne Programmieren d.h. mit einigen XMLs sofern die Effekte nicht zu sehr aus der Reihe tanzen.

Die ApiDemos liegen neben anderen Beispielen unter [whatever]\android-sdk-windows-1.5_r3\platforms\android-1.5\samples\
Ist übrigens ne Android-App, d.h. einfach mal als Projekt in Eclipse anlegen und direkt auf dem Handy ausführen.

Gruß,
Shini
 
Jop, hab die api demos natürlich schon miteinbezogen und sehe auch immer wieder nach! Ich hab nur irgendwie nicht verstanden, wie die das genau mauchen!

mfg Chri
 
Du willst quasi die aufzurufende Activity von Links nach Rechts oder ähnliches "reinschweben" lassen?
 
Shinigami schrieb:
Du willst quasi die aufzurufende Activity von Links nach Rechts oder ähnliches "reinschweben" lassen?

Exakt das würde ich gern machen;)
 
Hab mal ein wenig C&P betrieben und folgendes funzt bei mir:

Hab ne Activity, die auf einem LinearLayout basiert. Diesem habe ich zusätzlich folgendes Attribut verpasst:

Code:
android:layoutAnimation="@anim/layout_animation"
Wie zu sehen braucht man ein Verzeichnis "anim" (hab ich anlegen dürfen - sollte aber beliebig sein) im res-Ordner. Darin liegt eine XML-Datei mit folgendem Inhalt:

Code:
<?xml version="1.0" encoding="utf-8"?>
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
        android:delay="10%"
        android:animation="@anim/slide_right" />
Dieses "Statement" bedingt wiederum eine weitere Datei: slide_right. Also noch ne XML-Datei im anim-Ordner:

Code:
<?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:fromXDelta="-100%p" android:toXDelta="0" android:duration="350" />
</set>
Der hier beschriebene Animations-Effekt wird auf jedes EINZELNE Kindelement des (in meinem Fall) LinearLayouts angewendet. Die delay-Anweisung mit 10% bewirkt, dass jedes Kind mit einer kleinen Verzögerung von oben nach unten "reinrutscht". Wenn man dies weglässt kommen alle gleichzeitig. ändert man das fromXDelta nach 100%p (also das negative Vorzeichen weglassen) kommen die Elemente von der anderen Seite...

Bei mir geht's. Test's mal.

Gruß,
Shini
 
  • Danke
Reaktionen: Hans-Peter und Chri
Funktioniert super!
Danke
mfg Chri
 
Wann erfahren wir eigentlich was wir hier bauen? :D
 
finde shinigami sollte zu 50% am geld beteiligt werden. er macht die meiste arbeit dabei
 
1.Hab ich doch schon 2 oder 3 mal erklärt!:)
und 2. War heute die deadline für mein projekt und es ist fertig geworden!
(Was nicht zuletzt an der tollen cummunity hir liegt!;))

mfg Chri
 
swordi schrieb:
finde shinigami sollte zu 50% am geld beteiligt werden. er macht die meiste arbeit dabei

Sry! Aber Geld gibts keines;)! Ist immerhin freiwillig, dass man hier was postet!
 
und dann den ruhm alleine einheimsen ;)
 
Ich will mich nicht wiederholen! :-|
 
Ich find's super, dass wir Dir helfen konnten Dein Vorhaben nicht zu realisieren sondern auch noch zeitgerecht. Hoch lebe die Community;-) Wann machste das nächste Projekt? Hab Angst vor Langeweile :p
 
In nächster Zeit kann ich leider nichts neues starten, weil bei mir der harte Schulaltag wieder losgeht:(

Aber, wenn mir wieder etwas unterkommt, dass ich realisieren möchte, melde ich mich natürlich wieder sofort bei dir!;)

mfg
 

Ähnliche Themen

Gemini-Media
Antworten
1
Aufrufe
1.842
swa00
swa00
B
Antworten
4
Aufrufe
495
bb321
B
FabianDev
Antworten
5
Aufrufe
560
swa00
swa00
Zurück
Oben Unten