2013-05-19 2 views
0

Сразу после этого я запускаю О Activity с overridePendingTransition(), поэтому я могу получить анимацию входящей активности.Анимация overriding onNavigateUp по умолчанию одна

Я хочу, чтобы операция выполняла анимацию, а также после «увольнения», поэтому я перегрузил onBackPressed(), и она работает нормально.

Проблема возникает, так как в операции «О программе» включена функция «Навигация вверх», о том, как выполнять анимацию, когда нажимается надпись «Вверх» - вместо кнопки «Назад» - для возврата к предыдущей операции.

Я попытался

@Override 
public boolean onNavigateUp() { 
    overridePendingTransition(R.anim.fadeinltr, R.anim.fadeoutltr); 
    return super.onNavigateUp(); 
} 

, но он не работает, потому что к тому времени метод overridePendingTransition() называется, нет никакого перехода переопределить еще.

Любые идеи?

+0

Не уверен, что если он будет работать, но вы можете попробовать установить булево флаг в 'onNavigateUp' затем читать его в' конца() ' и переопределить анимацию, если флаг установлен. – dmon

+0

@dmon, похоже, не работает ... – Jago

ответ

1

У меня была такая же проблема, и я решил таким образом:

@Override 
public boolean onNavigateUp(){ 
    boolean x = super.onNavigateUp(); 
    overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_right); 
    return x; 
} 
Смежные вопросы