برای رد کردن، انگشت خود را تند بکشید

کشیدن انگشت برای رد کردن انیمیشن، انتقال را هنگامی که کاربران به صفحه قبلی هدایت می‌شوند، منتقل می‌کند.

جزئیات انیمیشن برای کشیدن انگشت برای رد کردن، شبیه به مطبوعات RSB است. انگشت شما پیشرفت انیمیشن را تا 50 درصد کنترل می کند.

یک انیمیشن اضافی در نمای برنامه وجود دارد که به ژست رد کردن مرتبط است. میزان حرکت نشان داده شده در نمای برنامه دقیقاً با فاصله ای که انگشت برای حرکت نیاز دارد یکسان نیست. نمای برنامه هرگز نباید لبه صفحه نمایش را ترک کند و جلوه ای فشرده با مقداری مقاومت نشان دهد.

پیاده سازی

Wear نسخه مخصوص خود را از Box دارد، SwipeToDismissBox . این قابلیت پشتیبانی از حرکت تند کشیدن برای رد کردن را اضافه می کند، که شبیه دکمه برگشت در تلفن همراه است.

SwipeToDismissBox یک فایل ترکیبی است که با کشیدن انگشت به راست می توان آن را رد کرد.

برای استفاده از SwipeToDismissBox ، ابتدا باید یک حالت ایجاد کنید. وضعیت حاوی اطلاعاتی در مورد جهت کشیدن انگشت، در حال اجرا بودن یک انیمیشن، مقدار فعلی و هدف و موارد دیگر است. مثال زیر نحوه طراحی یک تند کشیدن ساده برای رد کردن عملکرد را نشان می دهد:

val state = rememberSwipeToDismissBoxState()
SwipeToDismissBox(
    onDismissed = { /* navigateBack */ },
) { isBackground ->
    if (isBackground) {
        Box(modifier = Modifier.fillMaxSize().background(MaterialTheme.colors.secondaryVariant))
    } else {
        Column(
            modifier = Modifier.fillMaxSize().background(MaterialTheme.colors.primary),
            horizontalAlignment = Alignment.CenterHorizontally,
            verticalArrangement = Arrangement.Center,
        ) {
            Text("Swipe to dismiss", color = MaterialTheme.colors.onPrimary)
        }
    }
}

برای اطلاعات بیشتر در مورد استفاده از SwipeToDismissBox در ارتباط با کتابخانه پیمایش، به اسناد مرجع برای کتابخانه Wear Compose Navigation مراجعه کنید.

طراحی

هنگام طراحی تند کشیدن برای رد کردن اقدام، دو اصل زیر را در نظر داشته باشید:

لبه صفحه نمایش

سایر عناصر رابط کاربری را که قابل کشیدن هستند، مانند نماهای صفحه بندی شده برنامه، در نظر بگیرید. وقتی تند کشیدن برای رد کردن امکان پذیر است، 20 درصد از لبه صفحه را برای فعال کردن آن حرکت رزرو کنید.

این مثال را از پایگاه کد Compose Material for Wear OS برای مثالی از کشیدن لبه زمانی که محتوا به صورت افقی قابل پیمایش است، ببینید.

آستانه بازگشت یا ماندن در نمای برنامه

اگر کاربر انگشت خود را روی بیش از 50 درصد عرض صفحه کشیده باشد، برنامه باید بقیه انیمیشن‌های سوایپ به عقب را فعال کند. اگر کمتر از آن باشد، برنامه باید به نمای کامل برنامه بازگردد.

اگر حرکت سریع است، قانون آستانه 50 درصد را نادیده بگیرید و انگشت خود را به عقب بکشید.