में स्लाइड करने के लिए मैं FragmentTransaction.setCustomAnimations का उपयोग करके निम्न प्रभाव प्राप्त करने का प्रयास कर रहा हूं।फ्रैगमेंट ट्रांज़ेक्शन एनीमेशन शीर्ष
- टुकड़ा एक दिखा रहा है
- टुकड़ा बी टुकड़ा एक साथ टुकड़ा एक बदलें प्रतिस्थापन के दौरान दिखाई रहना चाहिए। टुकड़े बी को दाईं ओर से स्लाइड करना चाहिए। फ्रैगमेंट बी को फ्रैगमेंट ए के शीर्ष पर स्लाइड करना चाहिए।
मुझे एनीमेशन सेटअप में स्लाइड प्राप्त करने में कोई समस्या नहीं है। मेरी समस्या यह है कि मैं यह नहीं समझ सकता कि फ्रैगमेंट को कैसे बनाए रखना है, जहां यह है और फ्रेमिंग बी के तहत हो, जबकि एनीमेशन में स्लाइड चल रही है। कोई फर्क नहीं पड़ता कि मैं क्या करता हूं ऐसा लगता है कि टुकड़ा ए शीर्ष पर है।
मैं इसे कैसे प्राप्त कर सकता हूं?
यहाँ FragmentTransaction कोड है:
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.slide_in_right, R.anim.nothing, R.anim.nothing,
R.anim.slide_out_right);
ft.replace(R.id.fragment_content, fragment, name);
ft.addToBackStack(name);
ft.commit();
आप देख सकते हैं मैं "बाहर" एनीमेशन के लिए एक एनीमेशन R.anim.nothing परिभाषित किया है क्योंकि मैं वास्तव में टुकड़ा एक अन्य कुछ भी नहीं करना चाहते हैं बस लेनदेन के दौरान यह कहां रहने के बजाय।
slide_in_right.xml
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="100%p"
android:toXDelta="0"
android:zAdjustment="top" />
nothing.xml
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="@android:integer/config_mediumAnimTime"
android:fromAlpha="1.0"
android:toAlpha="1.0"
android:zAdjustment="bottom" />
मैंने एक बग रिपोर्ट दायर की है क्योंकि वर्तमान जेड ऑर्डरिंग सिर्फ सादा गलत है। https://code.google.com/p/android/issues/detail?id=163384&thanks=163384&ts=1428443402 – sbaar