وضعیت فوکوس را نشان می‌دهد

حالت فوکوس، یک نشانه بصری واضح ارائه می‌دهد تا به کاربران کمک کند بفهمند کدام عنصر رابط کاربری در حال حاضر فوکوس ورودی را در اختیار دارد. همه اجزای تعاملی Material 3 به طور پیش‌فرض نشانگرهای فوکوس داخلی را ارائه می‌دهند.

نشانگر تمرکز تم متریال

کامپوننت‌های متریال از تابع ripple و LocalIndication برای ترسیم تغییرات حالت بصری استفاده می‌کنند. برای اتصال بازخورد استاندارد تمرکز متریال به یک کامپوننت سفارشی:

  1. با استفاده از remember { MutableInteractionSource() } یک MutableInteractionSource ایجاد کنید.
  2. منبع تعامل را به همراه ripple() به اصلاح‌کننده‌ی indication ارسال کنید.

val interactionSource = remember { MutableInteractionSource() }

Box(
    modifier = Modifier
        .clickable(
            interactionSource = interactionSource,
            indication = null
        ) { /* onClick */ }
        .indication(
            interactionSource = interactionSource,
            indication = ripple()
        )
) {
    Text("Custom component with Material ripple")
}

پیاده‌سازی نشانه‌های فوکوس سفارشی

برای نشانه‌های بصری سفارشی (مانند مقیاس‌بندی، حاشیه‌ها یا جلوه‌های درخشش):

  1. یک IndicationNodeFactory ایجاد کنید.
  2. تعاملات فوکوس منتشر شده توسط InteractionSource عنصر را مشاهده کنید.
  3. با استفاده از اصلاح‌کننده‌ی indication ، نشانه‌ی سفارشی را اعمال کنید.

var interactionSource = remember { MutableInteractionSource() }

Card(
    modifier = Modifier
        .clickable(
            interactionSource = interactionSource,
            indication = MyHighlightIndication,
            enabled = true,
            onClick = { }
        )
) {
    Text("hello")
}

{% کلمه به کلمه %} {% فعل کمکی %} {% کلمه به کلمه %} {% فعل کمکی %}