আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাস ও সিস্টেম অ্যানিমেশন ডিফল্ট হিসেবে চালু করা থাকে। আপনার অ্যাপ ব্যাক ইভেন্ট ইন্টারসেপ্ট করলে এবং আপনি আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাসের জেসচারে মাইগ্রেট না করলে, ব্যাক নেভিগেশন API ব্যবহার করার জন্য আপনার অ্যাপ আপডেট করুন।
ডিফল্ট সিস্টেম অ্যানিমেশন চালু করুন
ব্যাক-টু-হোম, ক্রস-অ্যাক্টিভিটি এবং ক্রস-টাস্ক সিস্টেম অ্যানিমেশন Android 15 এবং তার পরবর্তী ভার্সনের ডিভাইসে সেইসব অ্যাপের জন্য উপলভ্য যেগুলি কাজ করে এমন ব্যাক হ্যান্ডলিং API-তে মাইগ্রেট করা হয়েছে।
- হোম স্ক্রিনে ফিরে যাওয়া: ব্যবহারকারীকে হোম স্ক্রিনে ফিরিয়ে নিয়ে যায়।
- ক্রস-অ্যাক্টিভিটি: অ্যাপের মধ্যে অ্যাক্টিভিটির মধ্যে ট্রানজিশন।
- ক্রস-টাস্ক: টাস্ক-এর মধ্যে ট্রানজিশন।
Android 15 ও তার পরবর্তী যেকোনও ভার্সনে এইসব অ্যানিমেশন ডিফল্ট হিসেবে চালু করা থাকে। Android 13 বা 14 ভার্সন চালানো ডিভাইসে, ব্যবহারকারীরা ডেভেলপার বিকল্প-এর মাধ্যমে সেগুলি চালু করতে পারবেন।
সিস্টেম অ্যানিমেশন পেতে, আপনার AndroidX Activity ডিপেন্ডেন্সি
1.6.0 বা তার পরবর্তী যেকোনও ভার্সনে আপডেট করুন।
নেভিগেশন কম্পোজের মাধ্যমে আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাস চালু করা
নেভিগেশন কম্পোজে আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাস ব্যবহার করতে, আপনি
navigation-compose ২.৮.০
লাইব্রেরি বা তার পরবর্তী ভার্সন ব্যবহার করছেন কিনা তা নিশ্চিত করুন।
ব্যবহারকারী সোয়াইপ করে ফিরে গেলে, নেভিগেশন কম্পোজ অটোমেটিক স্ক্রিনের মধ্যে ক্রস-ফেড করে:
নেভিগেট করার সময়, আপনি popEnterTransition এবং popExitTransition-এর মাধ্যমে কাস্টম ট্রানজিশন তৈরি করতে পারবেন। আপনার
NavHost-এ প্রয়োগ করা হলে, এই মডিফায়ারগুলি আপনাকে এন্টার ও এক্সিট স্ক্রিন কীভাবে অ্যানিমেট করবে তা নির্ধারণ করতে দেয়। আপনি এগুলি ব্যবহার করে বিভিন্ন ধরনের এফেক্ট তৈরি করতে পারবেন, যেমন স্কেলিং,
ফেডিং বা স্লাইডিং।
এই উদাহরণে, ব্যবহারকারী ফিরে যাওয়ার সময় popExitTransition-এর মধ্যে scaleOut ব্যবহার করা হয়েছে
যাতে বর্তমান স্ক্রিনটি ছোট করে দেখানো যায়। এছাড়াও, transformOrigin প্যারামিটারটি সেই পয়েন্ট নির্ধারণ করে যার চারপাশে স্কেলিং
অ্যানিমেশন ঘটে। ডিফল্ট হিসেবে, এটি স্ক্রিনের কেন্দ্রবিন্দু (0.5f, 0.5f)।
আপনি এই ভ্যালু অ্যাডজাস্ট করে অন্য কোনও পয়েন্ট থেকে স্কেলিং শুরু করতে পারেন।
NavHost( navController = navController, startDestination = Home, popExitTransition = { scaleOut( targetScale = 0.9f, transformOrigin = TransformOrigin(pivotFractionX = 0.5f, pivotFractionY = 0.5f) ) }, popEnterTransition = { EnterTransition.None }, modifier = modifier, )
এই কোড নিম্নলিখিত ফলাফল দেখায়:
popEnterTransition এবং popExitTransition বিশেষভাবে অ্যানিমেশন কন্ট্রোল করে
যেমন, ব্যাক জেসচারের মাধ্যমে ব্যাক স্ট্যাক পপ করার সময়। এছাড়াও, আপনি
enterTransition এবং exitTransition ব্যবহার করে কম্পোজেবল যোগ করা এবং
বাদ দেওয়ার জন্য অ্যানিমেশন নির্ধারণ করতে পারবেন, শুধু ফিরে যাওয়া সংক্রান্ত পূর্বাভাসের জন্য নয়। আপনি শুধু
enterTransition এবং exitTransition সেট করলে, সেগুলি সাধারণ নেভিগেশন এবং ব্যাক স্ট্যাক পপ করা,
উভয় ক্ষেত্রেই ব্যবহার করা হয়। তবে, popEnterTransition এবং
popExitTransition ব্যবহার করে আপনি ব্যাক নেভিগেশনের জন্য আলাদা অ্যানিমেশন তৈরি করতে পারবেন।
শেয়ার করা এলিমেন্ট ট্রানজিশনের সাথে ইন্টিগ্রেট করুন
শেয়ার করা এলিমেন্ট ট্রানজিশন, শেয়ার করা কন্টেন্ট সহ কম্পোজেবলের মধ্যে একটি মসৃণ ভিজ্যুয়াল কানেকশন প্রদান করে, যা প্রায়শই নেভিগেশনের জন্য ব্যবহার করা হয়।
Navigation Compose-এর সাথে শেয়ার করা এলিমেন্ট ব্যবহার করতে, শেয়ার করা এলিমেন্টের সাথে আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাস দেখুন।
মেটিরিয়াল কম্পোজ কম্পোনেন্টের মাধ্যমে আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাসে সহায়তা করা
Material Compose লাইব্রেরির অনেক কম্পোনেন্ট এমনভাবে ডিজাইন করা হয়েছে যাতে সেগুলি
আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাসের জেসচারের সাথে নির্বিঘ্নে কাজ করতে পারে। এইসব কম্পোনেন্টে আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাস অ্যানিমেশন চালু করতে, আপনার প্রোজেক্টে লেটেস্ট Material3 ডিপেন্ডেন্সি (androidx.compose.material3:material3-*:1.3.0 বা তার চেয়ে বেশি) অন্তর্ভুক্ত করুন।
প্রেডিকটিভ ব্যাক অ্যানিমেশন কাজ করে এমন মেটিরিয়াল কম্পোনেন্টের মধ্যে রয়েছে:
SearchBarModalBottomSheetModalDrawerSheet/DismissibleDrawerSheetModalNavigationDrawer/DismissibleNavigationDrawer
SearchBar এবং ModalBottomSheet অটোমেটিক অ্যানিমেট হয়
আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাসের জেসচারের সাথে। ModalNavigationDrawer,
ModalDrawerSheet, DismissibleDrawerSheet এবং
DismissibleNavigationDrawer-এর জন্য আপনাকে তাদের সংশ্লিষ্ট শিট কন্টেন্ট কম্পোজেবলে
drawerState পাস করতে হবে।
আগের ধাপে ফিরে যাওয়া সংক্রান্ত পূর্বাভাসের জেসচার অ্যানিমেশন পরীক্ষা করুন
আপনি এখনও Android 13 বা Android 14 ব্যবহার করলে, ব্যাক-টু-হোম অ্যানিমেশন পরীক্ষা করতে পারবেন।
এই অ্যানিমেশন পরীক্ষা করতে, এইসব ধাপ অনুসরণ করুন:
- আপনার ডিভাইসে, সেটিংস > সিস্টেম > ডেভেলপার বিকল্প-এ যান।
- প্রেডিকটিভ ব্যাক অ্যানিমেশন বিকল্প বেছে নিন।
- আপনার আপডেট করা অ্যাপ চালু করুন এবং এটি অ্যাকশনে দেখতে আগের ধাপে ফিরে যাওয়া সংক্রান্ত জেসচার ব্যবহার করুন।
Android 15 এবং তার পরবর্তী ভার্সনে, এই ফিচার ডিফল্ট হিসেবে চালু করা থাকে।