اشاره برگشت پیشگویانه و پویانماییهای سیستم بهطور پیشفرض فعال هستند. اگر برنامهتان رویداد برگشت را رهگیری میکند و به برگشت پیشگویانه منتقل نشدهاید، برنامهتان را بهروز کنید تا از میاناهای برنامهسازی کاربردی پیمایش به عقب پشتیبانیشده استفاده کند.
فعال کردن پویانماییهای پیشفرض سیستم
پویانماییهای سیستم برگشت به صفحه اصلی، بین فعالیتی، و بین تکلیفی در دستگاههای دارای Android 15 و نسخههای جدیدتر برای برنامههایی که به میاناهای برنامهسازی کاربردی پشتیبانیشده برای مدیریت برگشت منتقل شدهاند دردسترس است.
- برگشتن به صفحه اصلی: کاربر را به صفحه اصلی برمیگرداند.
- فعالیت متقاطع: انتقال بین فعالیتها در برنامه.
- بینتکلیفی: انتقال بین تکالیف.
این پویانماییها بهطور پیشفرض در Android 15 و بالاتر فعال هستند. در دستگاههای دارای Android نسخه ۱۳ یا ۱۴، کاربران میتوانند آنها را ازطریق گزینههای توسعهدهندگان فعال کنند.
برای دریافت پویانماییهای سیستم، وابستگی AndroidX Activity خود را به ۱.۶.۰ یا بالاتر بهروز کنید.
فعال کردن اشاره برگشت پیشگویانه با Navigation Compose
برای استفاده از برگشت پیشبینیکننده در Navigation Compose، مطمئن شوید که از کتابخانه
navigation-compose 2.8.0
یا بالاتر استفاده میکنید.
وقتی کاربر تند به عقب میکشد، Navigation Compose بهطور خودکار بین صفحهها محو تدریجی متقاطع انجام میدهد:
هنگام پیمایش، میتوانید بااستفاده از
popEnterTransition و popExitTransition انتقالهای سفارشی ایجاد کنید. وقتی این اصلاحکنندهها در
NavHost اعمال شوند، به شما امکان میدهند نحوه پویانمایی صفحههای ورود و خروج را تعریف کنید. میتوانید از آنها برای ایجاد انواع جلوهها، مانند مقیاسبندی،
محو شدن، یا لغزیدن استفاده کنید.
در این مثال، از scaleOut در popExitTransition برای کوچک کردن
صفحه خروجی هنگام پیمایش کاربر به عقب استفاده میشود. علاوهبراین، پارامتر
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 برای تعریف پویانماییها برای ورود و
خروج از composable بهطور کلی استفاده کنید، نه فقط برای اشاره برگشت پیشگویانه. اگر فقط
enterTransition و exitTransition را تنظیم کنید، از آنها هم برای پیمایش معمولی
و هم برای پاپ کردن پشته قبلیها استفاده میشود. بااینحال، بااستفاده از popEnterTransition و
popExitTransition میتوانید پویانماییهای متمایزی برای پیمایش به عقب ایجاد کنید.
ادغام با گذارهای عنصر مشترک
گذار عنصر مشترک اتصال بصری روانی بین ترکیبشدنیهای دارای محتوای مشترک ایجاد میکند که اغلب برای پیمایش استفاده میشود.
برای استفاده از عناصر همرسانیشده با Navigation Compose، پیشبینی برگشت با عناصر همرسانیشده را ببینید.
پشتیبانی از برگشت پیشگویانه با مؤلفههای Material Compose
بسیاری از مؤلفهها در کتابخانه Material Compose بهگونهای طراحی شدهاند که بهطور یکپارچه با اشارههای برگشت پیشگویانه کار کنند. برای فعال کردن پویانماییهای پیشبینیکننده برگشت در این
مؤلفهها، جدیدترین وابستگی Material3
(androidx.compose.material3:material3-*:1.3.0 یا بالاتر) را در پروژهتان اضافه کنید.
عناصر Material که از پویانماییهای اشاره برگشت پیشگویانه پشتیبانی میکنند عبارتاند از:
SearchBarModalBottomSheetModalDrawerSheet/DismissibleDrawerSheetModalNavigationDrawer/DismissibleNavigationDrawer
SearchBar و ModalBottomSheet بهطور خودکار با اشارههای برگشت پیشگویانه پویانمایی میشوند. ModalNavigationDrawer،
ModalDrawerSheet، DismissibleDrawerSheet، و
DismissibleNavigationDrawer از شما میخواهند که drawerState را به
ترکیبپذیرهای محتوای برگه مربوطه خود ارسال کنید.
آزمایش کردن پویانمایی اشاره برگشت پیشگویانه
اگر هنوز از Android 13 یا Android 14 استفاده میکنید، میتوانید پویانمایی برگشت به صفحه اصلی را آزمایش کنید.
برای آزمایش این پویانمایی، این مراحل را دنبال کنید:
- در دستگاهتان، به تنظیمات > سیستم > گزینههای توسعهدهنده بروید.
- پویانماییهای اشاره برگشت پیشگویانه را انتخاب کنید.
- برنامه بهروزشده را راهاندازی کنید و از اشاره برگشت برای دیدن آن در عمل استفاده کنید.
در Android 15 و نسخههای جدیدتر، این ویژگی بهطور پیشفرض فعال است.