প্রেডিকটিভ ব্যাক সেট আপ করুন

প্রেডিক্টিভ ব্যাক এবং সিস্টেম অ্যানিমেশন ডিফল্টরূপে সক্রিয় থাকে। যদি আপনার অ্যাপ ব্যাক ইভেন্টটি ইন্টারসেপ্ট করে এবং আপনি প্রেডিক্টিভ ব্যাকে মাইগ্রেট না করে থাকেন, তবে সমর্থিত ব্যাক নেভিগেশন এপিআই ব্যবহার করার জন্য আপনার অ্যাপটি আপডেট করুন।

পূর্বাভাসমূলক হোমপেজে ফিরে যাওয়ার অ্যানিমেশন।
পূর্বাভাসমূলক ক্রস-অ্যাক্টিভিটি অ্যানিমেশন।
ভবিষ্যদ্বাণীমূলক ক্রস-টাস্ক অ্যানিমেশন।

ডিফল্ট সিস্টেম অ্যানিমেশন সক্রিয় করুন

যেসব অ্যাপ সমর্থিত ব্যাক হ্যান্ডলিং এপিআই-তে স্থানান্তরিত হয়েছে, অ্যান্ড্রয়েড ১৫ ও তার পরবর্তী ডিভাইসগুলোতে সেগুলোর জন্য ব্যাক-টু-হোম, ক্রস-অ্যাক্টিভিটি এবং ক্রস-টাস্ক সিস্টেম অ্যানিমেশনগুলো উপলব্ধ।

  • হোম স্ক্রিনে ফিরে যান : ব্যবহারকারীকে হোম স্ক্রিনে ফিরিয়ে নিয়ে যায়।
  • ক্রস-অ্যাক্টিভিটি : অ্যাপের মধ্যে বিভিন্ন অ্যাক্টিভিটির মধ্যে রূপান্তর।
  • ক্রস-টাস্ক : কাজগুলোর মধ্যে পরিবর্তন।

অ্যান্ড্রয়েড ১৫ এবং এর পরবর্তী সংস্করণগুলোতে এই অ্যানিমেশনগুলো ডিফল্টভাবে চালু থাকে। অ্যান্ড্রয়েড ১৩ বা ১৪ চালিত ডিভাইসগুলোতে ব্যবহারকারীরা ডেভেলপার অপশন-এর মাধ্যমে এগুলো চালু করতে পারেন।

সিস্টেম অ্যানিমেশনগুলো পেতে, আপনার AndroidX Activity ডিপেন্ডেন্সি 1.6.0 বা উচ্চতর সংস্করণে আপডেট করুন।

ন্যাভিগেশন কম্পোজের মাধ্যমে প্রেডিক্টিভ ব্যাক সক্রিয় করুন

Navigation Compose-এ প্রেডিক্টিভ ব্যাক ব্যবহার করতে, নিশ্চিত করুন যে আপনি navigation-compose 2.8.0 বা তার উচ্চতর সংস্করণ লাইব্রেরি ব্যবহার করছেন।

ব্যবহারকারী যখন পিছনে সোয়াইপ করেন, তখন নেভিগেশন কম্পোজ স্বয়ংক্রিয়ভাবে স্ক্রিনগুলির মধ্যে ক্রস-ফেড করে:

চিত্র ২. সোসিয়ালইট-এর ডিফল্ট ইন-অ্যাপ ক্রসফেড অ্যানিমেশন।

নেভিগেট করার সময়, আপনি 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 ব্যবহার করে আপনি ব্যাক নেভিগেশনের জন্য স্বতন্ত্র অ্যানিমেশন তৈরি করতে পারেন।

শেয়ার করা এলিমেন্ট ট্রানজিশনের সাথে একীভূত করুন

শেয়ার্ড এলিমেন্ট ট্রানজিশনগুলো একই কন্টেন্টযুক্ত কম্পোজেবলগুলোর মধ্যে একটি মসৃণ ভিজ্যুয়াল সংযোগ প্রদান করে, যা প্রায়শই নেভিগেশনের জন্য ব্যবহৃত হয়।

চিত্র ৪। নেভিগেশন কম্পোজে প্রেডিক্টিভ ব্যাক সহ শেয়ার্ড এলিমেন্ট ট্রানজিশন।

নেভিগেশন কম্পোজের সাথে শেয়ার্ড এলিমেন্ট ব্যবহার করতে, “Predictive back with shared elements” দেখুন।

ম্যাটেরিয়াল কম্পোজ কম্পোনেন্টগুলির সাহায্যে ভবিষ্যদ্বাণীমূলক ব্যাক সাপোর্ট করুন

ম্যাটেরিয়াল কম্পোজ লাইব্রেরির অনেক কম্পোনেন্ট প্রেডিক্টিভ ব্যাক জেসচারের সাথে নির্বিঘ্নে কাজ করার জন্য ডিজাইন করা হয়েছে। এই কম্পোনেন্টগুলিতে প্রেডিক্টিভ ব্যাক অ্যানিমেশন সক্রিয় করতে, আপনার প্রজেক্টে সর্বশেষ ম্যাটেরিয়াল৩ ডিপেন্ডেন্সি ( androidx.compose.material3:material3-*:1.3.0 বা তার উচ্চতর সংস্করণ) অন্তর্ভুক্ত করুন।

যেসব ম্যাটেরিয়াল কম্পোনেন্ট প্রেডিক্টিভ ব্যাক অ্যানিমেশন সমর্থন করে, সেগুলো হলো:

SearchBar এবং ModalBottomSheet ভবিষ্যদ্বাণীমূলক ব্যাক জেসচারের মাধ্যমে স্বয়ংক্রিয়ভাবে অ্যানিমেট হয়। ModalNavigationDrawer , ModalDrawerSheet , DismissibleDrawerSheet এবং DismissibleNavigationDrawer জন্য আপনাকে তাদের নিজ নিজ শীট কন্টেন্ট কম্পোজেবল-এ drawerState পাস করতে হবে।

পূর্বাভাসমূলক ব্যাক জেসচার অ্যানিমেশন পরীক্ষা করুন

আপনি যদি এখনও অ্যান্ড্রয়েড ১৩ বা অ্যান্ড্রয়েড ১৪ ব্যবহার করেন, তাহলে হোম স্ক্রিনে ফিরে আসার অ্যানিমেশনটি পরীক্ষা করে দেখতে পারেন।

এই অ্যানিমেশনটি পরীক্ষা করতে, এই ধাপগুলো অনুসরণ করুন:

  1. আপনার ডিভাইসে, সেটিংস > সিস্টেম > ডেভেলপার অপশন- এ যান।
  2. ভবিষ্যদ্বাণীমূলক পিঠের অ্যানিমেশন নির্বাচন করুন।
  3. আপনার আপডেট করা অ্যাপটি চালু করুন এবং এটি কীভাবে কাজ করে তা দেখতে ব্যাক জেসচার ব্যবহার করুন।

অ্যান্ড্রয়েড ১৫ এবং এর পরবর্তী সংস্করণগুলোতে এই ফিচারটি ডিফল্টরূপে সক্রিয় থাকে।

অতিরিক্ত সম্পদ