{% setvar book_path %}/reference/androidx/_book.yaml{% endsetvar %} {% include "_shared/_reference-head-tags.html" %}

FocusDirection.Companion

public static class FocusDirection.Companion


Summary

Public methods

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is below the currently focused item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is a child of the currently focused item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you want to move focus to the parent of the currently focused item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is a child of the currently focused item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item to the left of the currently focused item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you want to move focus to the parent of the currently focused item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the previous focusable item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item to the right of the currently focused item.

static final @NonNull FocusDirection

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is above the currently focused item.

Public methods

getDown

public static final @NonNull FocusDirection getDown()

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is below the currently focused item.

import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusDirection
import androidx.compose.ui.platform.LocalFocusManager

val focusManager = LocalFocusManager.current
Column {
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Right) }) { Text("Right") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Left) }) { Text("Left") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Up) }) { Text("Up") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Down) }) { Text("Down") }
}

getEnter

@ExperimentalComposeUiApi
public static final @NonNull FocusDirection getEnter()

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is a child of the currently focused item.

getExit

@ExperimentalComposeUiApi
public static final @NonNull FocusDirection getExit()

Direction used in FocusManager.moveFocus to indicate that you want to move focus to the parent of the currently focused item.

getIn

@ExperimentalComposeUiApi
public static final @NonNull FocusDirection getIn()

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is a child of the currently focused item.

getLeft

public static final @NonNull FocusDirection getLeft()

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item to the left of the currently focused item.

import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusDirection
import androidx.compose.ui.platform.LocalFocusManager

val focusManager = LocalFocusManager.current
Column {
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Right) }) { Text("Right") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Left) }) { Text("Left") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Up) }) { Text("Up") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Down) }) { Text("Down") }
}

getNext

public static final @NonNull FocusDirection getNext()

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item.

import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusDirection
import androidx.compose.ui.platform.LocalFocusManager

val focusManager = LocalFocusManager.current
Column {
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Right) }) { Text("Right") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Left) }) { Text("Left") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Up) }) { Text("Up") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Down) }) { Text("Down") }
}

getOut

@ExperimentalComposeUiApi
public static final @NonNull FocusDirection getOut()

Direction used in FocusManager.moveFocus to indicate that you want to move focus to the parent of the currently focused item.

getPrevious

public static final @NonNull FocusDirection getPrevious()

Direction used in FocusManager.moveFocus to indicate that you are searching for the previous focusable item.

import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusDirection
import androidx.compose.ui.platform.LocalFocusManager

val focusManager = LocalFocusManager.current
Column {
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Right) }) { Text("Right") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Left) }) { Text("Left") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Up) }) { Text("Up") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Down) }) { Text("Down") }
}

getRight

public static final @NonNull FocusDirection getRight()

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item to the right of the currently focused item.

import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusDirection
import androidx.compose.ui.platform.LocalFocusManager

val focusManager = LocalFocusManager.current
Column {
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Right) }) { Text("Right") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Left) }) { Text("Left") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Up) }) { Text("Up") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Down) }) { Text("Down") }
}

getUp

public static final @NonNull FocusDirection getUp()

Direction used in FocusManager.moveFocus to indicate that you are searching for the next focusable item that is above the currently focused item.

import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.material.Button
import androidx.compose.material.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusDirection
import androidx.compose.ui.platform.LocalFocusManager

val focusManager = LocalFocusManager.current
Column {
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Row {
        Box(Modifier.focusable())
        Box(Modifier.focusable())
    }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Right) }) { Text("Right") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Left) }) { Text("Left") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Up) }) { Text("Up") }
    Button(onClick = { focusManager.moveFocus(FocusDirection.Down) }) { Text("Down") }
}