Dalam mode interaksi khusus (seperti kanvas gambar tersemat, permukaan pengontrol game, atau dialog input modal), aplikasi Anda mungkin perlu mengunci fokus ke satu komponen untuk sementara dan mencegah Tab atau tombol arah keluar dari navigasi.
Fokus pengambilan gambar
Untuk menangkap fokus, panggil captureFocus() pada FocusRequester:
val focusRequester = remember { FocusRequester() } Box( modifier = Modifier .focusRequester(focusRequester) .focusable() .onFocusChanged { focusState -> if (focusState.isFocused) { focusRequester.captureFocus() } } )
Saat fokus diambil, tombol navigasi fokus standar (seperti Tab) tidak memindahkan fokus ke komponen di dekatnya.
Melepaskan fokus
Untuk keluar dari status yang diambil dan memulihkan navigasi fokus normal di seluruh UI,
panggil freeFocus():
IconButton( onClick = { focusRequester.freeFocus() } ) { Icon(Icons.Default.Close, contentDescription = "Exit focus lock") }
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- Target fokus
- Mengelompokkan target fokus
- Meminta fokus secara terprogram