2016-12-13 76 views
0

我試圖在onAnimationEnd()中恢復活動,但它會拋出一個空指針異常,而我知道我做錯了任何人都可以請幫我解決這個問題嗎?如何在動畫結束後恢復活動?

Animation animation = AnimationUtils.loadAnimation(getContext(), R.anim.my_animation); 
myLayout.startAnimation(animation); 
animation.setAnimationListener(new Animation.AnimationListener() { 
         @Override 
         public void onAnimationStart(Animation animation) { 
         } 

         @Override 
         public void onAnimationEnd(Animation animation) { 
          onResume(); 
         } 

         @Override 
         public void onAnimationRepeat(Animation animation) { 
         } 
        }); 

上調試我發現了錯誤發生在這導致了編導類一個NullPointerException的getTransformation()。

P.S - 我想要執行動畫並在動畫結束後恢復活動,有沒有其他方法可以實現這一點?

+0

您的活動沒有暫停,所以它不是恢復 –

+1

學習基礎知識https://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle –

+0

三江源@DimaRostopira :) –

回答

0

當動畫發生時,您的活動僅處於恢復狀態。尚未進入暫停狀態以恢復其狀態。如果您的想法是執行onResume方法中編寫的邏輯,請將其複製到其他方法並調用它。不要直接調用生命週期回調。這些回調在需要的時候由ActivityManager正確調用。你應該非常徹底地清楚活動的生命週期回調。

Android activity and lifecycle

+0

Thankyou @HasifSeyd :) –

+0

@Udit Sarkar你在這裏感謝與upvoting和/或接受答案的人 –