के बाद नहीं कहा जाता है मेरे पास एक साझा साझा ऑब्जेक्ट, ImageView
के साथ दो गतिविधियां हैं। दोनों गतिविधियों AppCompatActivity
की उपवर्गों कर रहे हैं और वे एक ही विषय का हिस्सा:onEnterAnimationComplete() को गतिविधि लेनदेन
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowContentTransitions">true</item>
<item name="android:windowTranslucentStatus">false</item>
<item name="android:windowExitTransition">@transition/transition_slide</item>
<item name="android:windowEnterTransition">@transition/transition_slide</item>
<!-- specify shared element transitions -->
<item name="android:windowSharedElementEnterTransition">
@transition/obj_transition</item>
<item name="android:windowSharedElementExitTransition">
@transition/obj_transition</item>
</style>
गतिविधि एक निम्नलिखित तरीके से गतिविधि बी कॉल:
Intent intent = new Intent(ActivityA.this, ActivityB.class);
ActivityOptionsCompat options = ActivityOptionsCompat
.makeSceneTransitionAnimation(ActivityA.this, view, "common_tag");
ActivityCompat
.startActivityForResult(ActivityA.this, intent, ACT_B_TAG, options.toBundle());
गतिविधि बी पर, मैं पर एक साधारण wobbling एनीमेशन शुरू करना चाहते हैं वही साझा छवि दृश्य। अगर मैं onCreate
विधि पर एनीमेशन शुरू करता हूं, तो परिणाम काफी बदसूरत है क्योंकि यह गतिविधि संक्रमण के अंत से पहले शुरू होता है। इसलिए मैं गतिविधि बी में onEnterAnimationComplete()
विधि के ऊपर लिख:
@Override
public void onEnterAnimationComplete() {
Log.d(TAG, "ANIMATION COMPLETE");
Animation anim = AnimationUtils.loadAnimation(this, R.anim.wobble);
findViewById(R.id.SharedView).startAnimation(anim);
}
समस्या है, कुछ नहीं होता। गतिविधि और साझा तत्व संक्रमण खेलते हैं, लेकिन जब वे अन्य एनीमेशन समाप्त करते हैं तो शुरू नहीं होगा। लॉगकट आउटपुट की जांच करके मैं देखता हूं कि विधि को भी नहीं कहा जाता है। कोई विचार?
यह एक प्रासंगिक तो सवाल यह हो रहा है। http://stackoverflow.com/questions/39488410/onenteranimationcomplete-not-called-api-21 – Kiki