2011-10-13 16 views
16

Jestem w stanie podać animację od dołu do góry, kiedy przechodzę do następnej czynności, ale teraz, gdy nacisnąłem, używam tego samego kodu do animacji od góry do dołu animacji, ale zawsze idzie od dołu do góry, więc moje pytanie brzmi: jak dać animację od góry do dołu po naciśnięciu przycisku wstecz na urządzeniu z Androidem?
Proszę znaleźć mój kod poniżej.Jak zapewnić animację od góry do dołu w systemie Android?

Używam go podczas przechodzenia z jednego Activity na inny przy użyciu Intent.

overridePendingTransition(R.anim.slide_in_up, R.anim.slide_out_up); 

i XML: slide_in_up.xml

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
android:fromYDelta="100%p" android:toYDelta="0%p" 
android:duration="@android:integer/config_longAnimTime"/> 

i slide_out_up.xml jest

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
android:fromYDelta="0%p" android:toYDelta="-100%p" 
android:duration="@android:integer/config_longAnimTime"/> 

Odpowiedz

19

wystarczy zmienić -100 do 100 (usuń minus) w slide_out_up.xml

@Override 
public void onBackPressed() { 
    finish(); 
    overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim); 
} 
+0

pls odnoszą się do http://stackoverflow.com/questions/9306513/exchange-information-after-bluetooth-pairing-with-authentication-only-android – shyam

+0

hi hesam .. chciałbym zadać inne pytanie link, jeśli kiedykolwiek pracowałeś w technologii Bluetooth .. po sparowaniu 2 urządzeń przez Bluetooth, jak rozpocząć informacje o profilu wymiany z prośbą o autoryzację pojawia się w powiadomieniu ..i po zaakceptowaniu go tylko wymieniają informacje o profilu ... utknę tutaj od 3 dni pls help ... dzięki – shyam

+1

Cześć, myślałem, że widziałem twój link, ale niestety nie mam pojęcia. pozwól mi przeszukać go, jeśli mam wynik, to ci powiem. przepraszam :) – Hesam

4

Można zastąpić prasową zachowanie przycisku wstecz i ustawić odpowiednią animację, którą chcesz, tak:

@Override 
public void onBackPressed() { 
    finish(); 
    overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim); 
} 

Zmień animacje na overridePendingTransition, tak aby pasowały do ​​tych, które chcesz.

+0

i tak samo jak U, lecz że to jest danie tej samej animacji oznacza od dołu do góry, ale chcę, aby animacja od góry do dołu, kiedy wcisnąłem przycisk Wstecz, i odwróciłem nadpisaniePendingTransition (R.anim.slide_out_up, R.anim.slide_in_up); – shyam

+0

Robię to samo, co robisz, ale moja animacja "slide_out" to "android: fromYDelta =" 0% p "android: toYDelta =" 100% p "'. To działa dobrze tutaj. Czy dodałeś dodatkowe "Intent.FLAG_ACTIVITY_NO_ANIMATION" do "Intencji", kiedy zamierzałeś zadzwonić do następnej Aktywności? Czy zdarza się jakakolwiek animacja? – Alesqui

+0

Ten jest świetny – VVB

5

Właśnie realizowany go jeszcze dwa pliki xml konieczności jak

górę slajdów, 100 do 0 i 0 do - 100

suwak w dół -100 do 0 i 0 do 100

to działa idealnie.

5

Praca na moim tablecie 4.0.3.

slide_out_up.xml:

<set xmlns:android="http://schemas.android.com/apk/res/android" > 

    <translate 
     android:duration="@android:integer/config_mediumAnimTime" 
     android:fromYDelta="0%p" 
     android:toYDelta="-100%p" /> 

</set> 

slide_in_up XML:

<set xmlns:android="http://schemas.android.com/apk/res/android" > 

    <translate 
     android:duration="@android:integer/config_mediumAnimTime" 
     android:fromYDelta="-100%p" 
     android:toYDelta="0%p" /> 

</set> 

style.xml:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <style name="DialogAnimationOutUpInUp"> 
     <item name="android:windowEnterAnimation">@anim/slide_in_up</item> 
     <item name="android:windowExitAnimation">@anim/slide_out_up</item> 
    </style> 

</resources> 
Powiązane problemy