کانون در Jetpack Compose Glimmer

دستگاه‌های XR واجدشرایط
این راهنمایی به شما کمک می‌کند برای این نوع دستگاه‌های واقعیت گسترده تجربه بسازید.
عینک نمایشگردار

همه مؤلفه‌های Jetpack Compose Glimmer برای کار با روش‌های ورودی استاندارد، مانند تک‌ضرب زدن یا تند کشیدن روی صفحه لمسی عینک، طراحی شده‌اند و درعین‌حال پذیرای فرمان‌های ورودی سطح پایین‌تر که مختص سخت‌افزار عینک‌های نمایشگردار هستند نیز می‌باشند. مؤلفه‌های Jetpack Compose Glimmer به‌طور خودکار رویدادهای ورودی لازم را مدیریت می‌کنند.

برای کنش‌های استاندارد مانند پیمایش و کشیدن، از مؤلفه‌های Jetpack Compose Glimmer استفاده کنید تا تجربه یکسانی را ترویج دهید. بااین‌حال، برای مؤلفه‌های سفارشی یا رفتارهای تعاملی سفارشی، می‌توانید از Compose API موجود مانند Modifier.draggable یا Modifier.scrollable استفاده کنید.

ورودی اشاره‌گر و تمرکز

در عینک نمایشگردار، ورودی اشاره‌گر می‌تواند بر فوکوس تأثیر بگذارد:

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

وقتی کاربر در برنامه‌تان پیمایش می‌کند، حرکت تمرکز و ترتیب تغییر می‌کند.

حرکت فوکوس

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

ترتیب تمرکز

درست مانند Jetpack Compose،‏ Jetpack Compose Glimmer از جستجوی تمرکز یک‌بعدی استفاده می‌کند. برای آشنایی بیشتر با ترتیب پیمایش تمرکز، به تغییر ترتیب پیمایش تمرکز مراجعه کنید.

برای تغییر دادن موردی که در ابتدا روی آن تمرکز شده است، می‌توانید Modifier.focusGroup() سطح بالا اضافه کنید و onEnter سفارشی focusProperty را مشخص کنید:

Modifier.focusProperties {
    onEnter = {
        initialFocus.requestFocus()
        // Prevent focus from exiting the group
        cancelFocusChange()
    }
}
.focusGroup()

محفظه‌های پیمایشی

برای تجربه کاربری بهینه، محفظه‌های پیمایشی مانند فهرست‌ها باید تنها مؤلفه اصلی در صفحه‌نمایش باشند. برای جلوگیری از سردرگمی در پیمایش و ترویج حرکت تمرکز روان و قابل‌پیش‌بینی، از قرار دادن فهرست پیمایش‌شدنی مستقیماً در بالا یا پایین عناصر تعاملی دیگر، مانند دکمه‌ها، خودداری کنید.

حالت‌های فوکوس پیش‌فرض

Jetpack Compose Glimmer حالت‌های تمرکز پیش‌فرض را در سراسر مؤلفه‌های تعاملی خود، ازجمله سطوح، کارت‌ها، و موارد فهرست، پیاده‌سازی می‌کند و بازخورد دیداری واضح و ثابتی را درطول تعامل کاربر ترویج می‌دهد.

شکل ۱. سه حالت تمرکز در Jetpack Compose Glimmer که بااستفاده از بازخورد دیداری مبتنی بر طرح کلی متمایز شده‌اند.
  • پیش‌فرض: رنگ پس‌زمینه دکمه از GlimmerTheme.colors.surface مشتق می‌شود، محتوای اصلی آن رنگ محتوای آن سطح را محاسبه می‌کند.

  • متمرکز: عرض حاشیه برای نشان دادن تمرکز افزایش می‌یابد.

  • متمرکزشده + فشرده‌شده: پس‌زمینه روی GlimmerTheme.colors.surface با کدر بودن بیشتر تنظیم شده است تا وضعیت انتخاب‌شده آن را نشان دهد.