যদি আপনাকে সমর্থন লাইব্রেরি ব্যবহার না করতে হয় তবে রোমানের উত্তরটি একবার দেখুন।
তবে আপনি যদি সমর্থন লাইব্রেরিটি ব্যবহার করতে চান তবে নীচের বর্ণিত হিসাবে আপনাকে পুরানো অ্যানিমেশন কাঠামোটি ব্যবহার করতে হবে।
পরামর্শ করার পর Reto এর এবং blindstuff এর উত্তর আমি নিম্নলিখিত কোড পরিশ্রমী অর্জিত হয়েছে।
টুকরা প্রদর্শিত ডান থেকে সহচরী এবং বাম আউট সহচরী যখন ফিরে টেপা হলে।
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.setCustomAnimations(R.anim.enter, R.anim.exit, R.anim.pop_enter, R.anim.pop_exit);
CustomFragment newCustomFragment = CustomFragment.newInstance();
transaction.replace(R.id.fragment_container, newCustomFragment );
transaction.addToBackStack(null);
transaction.commit();
আদেশ গুরুত্বপূর্ণ। এর অর্থ আপনার অবশ্যই setCustomAnimations()
আগে কল করতে হবে replace()
বা অ্যানিমেশন কার্যকর হবে না!
এরপরে এই ফাইলগুলি রেজ / আনিম ফোল্ডারের ভিতরে রাখতে হবে ।
enter.xML :
<?xml version="1.0" encoding="utf-8"?>
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="100%"
android:toXDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
প্রস্থান.এক্সএমএল :
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="-100%"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
pop_enter.xML :
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="-100%"
android:toXDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
pop_exit.xML :
<?xml version="1.0" encoding="utf-8"?>
<set>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="100%"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="@android:integer/config_mediumAnimTime"/>
</set>
অ্যানিমেশনগুলির সময়কাল কোনও ডিফল্ট মান @android:integer/config_shortAnimTime
বা অন্য কোনও সংখ্যায় পরিবর্তিত হতে পারে ।
নোট করুন যে খণ্ড প্রতিস্থাপনের মধ্যে যদি একটি কনফিগারেশন পরিবর্তন ঘটে (উদাহরণস্বরূপ রোটেশন) পিছনের ক্রিয়াটি অ্যানিমেটেড হয় না। এটি একটি ডকুমেন্টেড বাগ যা এখনও সমর্থন লাইব্রেরির রেভ 20 এ বিদ্যমান।