आप अपनी डिफ़ॉल्ट गतिविधि एनीमेशन को ओवरराइट कर सकते हैं और यह ओवरराइड पार्टिंग ट्रांसमिशन से बेहतर प्रदर्शन कर सकता है। मैं इस समाधान का उपयोग करता हूं जो हर एंड्रॉइड संस्करण के लिए काम करता है। बस पेस्ट 4 फाइलों की प्रतिलिपि बनाएँ और नीचे दी गई 4 लाइनों की शैली जोड़ें:
"कस्टम एक्टिविटीएनीमेशन" बनाएं और इसे "विंडो एनीमेशन स्टाइल" द्वारा अपनी मूल थीम में जोड़ें।
<!-- Base application theme. -->
<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/colorPrimary</item>
<item name="android:windowAnimationStyle">@style/CustomActivityAnimation</item>
</style>
<style name="CustomActivityAnimation" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/slide_in_right</item>
<item name="android:activityOpenExitAnimation">@anim/slide_out_left</item>
<item name="android:activityCloseEnterAnimation">@anim/slide_in_left</item>
<item name="android:activityCloseExitAnimation">@anim/slide_out_right</item>
</style>
फिर रेस फ़ोल्डर के अंतर्गत anim फ़ोल्डर बनाएँ और फिर anim फ़ोल्डर में इस चार एनीमेशन फ़ाइलों को बनाने:
slide_in_right.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="100%p" android:toXDelta="0"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
slide_out_left.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="-100%p"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
slide_in_left .xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="-100%p" android:toXDelta="0"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
slide_out_right.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="100%p"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
आप किसी भी समस्या का सामना तो आप मेरी sample project from github डाउनलोड कर सकते हैं।
धन्यवाद
स्रोत
2016-10-09 12:53:01
मैंने इस कोड का उपयोग किया: 'overridePendingTransition (android.R.anim.fade_in, android.R.anim.fade_out);' आप इन उदाहरणों को [जीमेलएनीमेशन] में देख सकते हैं (https://github.com/CabezasGonzalezJavier/GmailAnimation) या [लोपेएनीमेशन] (https://github.com/CabezasGonzalezJavier/LopeAnimations)। इसके अलावा आप इस [ब्लॉग] में और अधिक देख सकते हैं (http://thedeveloperworldisyours.com/android/gmail-overriding-pending-transition/#sthash.CEhJwJLg.dpbs)। – Cabezas