focusOrder
Compose Modifier
Common
Deprecated Use focusProperties() instead
fun Modifier.focusOrder(
@Suppress("DEPRECATION") focusOrderReceiver: FocusOrder.() -> Unit
): Modifier
Use this modifier to specify a custom focus traversal order.
Parameters
focusOrderReceiver | Specifies FocusRequester s that are used when the user wants to move the current focus to the next item, or wants to move focus left , right , up or down . |
Common
Deprecated Use focusRequester() instead
fun Modifier.focusOrder(focusRequester: FocusRequester): Modifier
A modifier that lets you specify a FocusRequester
for the current composable so that this
focusRequester
can be used by another composable to specify a custom focus order.
Common
Deprecated Use focusProperties() and focusRequester() instead
fun Modifier.focusOrder(
focusRequester: FocusRequester,
@Suppress("DEPRECATION") focusOrderReceiver: FocusOrder.() -> Unit,
): Modifier
A modifier that lets you specify a FocusRequester
for the current composable along with
focusOrder
.
Code Examples
CustomFocusOrderSample
@Composable
fun CustomFocusOrderSample() {
Column(Modifier.fillMaxSize(), Arrangement.SpaceEvenly) {
val (item1, item2, item3, item4) = remember { FocusRequester.createRefs() }
Row(Modifier.fillMaxWidth(), Arrangement.SpaceEvenly) {
Box(
Modifier.focusRequester(item1)
.focusProperties {
next = item2
right = item2
down = item3
previous = item4
}
.focusable()
)
Box(
Modifier.focusRequester(item2)
.focusProperties {
next = item3
right = item1
down = item4
previous = item1
}
.focusable()
)
}
Row(Modifier.fillMaxWidth(), Arrangement.SpaceEvenly) {
Box(
Modifier.focusRequester(item3).focusProperties {
next = item4
right = item4
up = item1
previous = item2
}
)
Box(
Modifier.focusRequester(item4).focusProperties {
next = item1
left = item3
up = item2
previous = item3
}
)
}
}
}