Android Jetpack Compose TextField 禁用键盘自动建议

mPa*_*Red 19 android android-jetpack-compose android-compose-textfield android-jetpack-compose-text

我正在寻找一种使用 TextField Composable 禁用键盘自动建议的方法。

在大约 4 个月前的 Android 时代,使用 EditText 您可以执行类似的操作,将 inputType 设置为textNoSuggestions|textVisiblePassword

<EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions|textVisiblePassword" />
Run Code Online (Sandbox Code Playgroud)

我在这里使用两种 inputTypes,因为并非所有键盘都支持该textNoSuggestions字段。

有没有办法用 Jetpack Compose 来做到这一点TextField?我没有看到他们有任何KeyboardOptions模仿此功能的东西。

Thi*_*uza 14

var text by remember { mutableStateOf("") }
TextField(
    value = text,
    keyboardOptions = KeyboardOptions(
        keyboardType = KeyboardType.Email,
        autoCorrect = false
    ),
    onValueChange = {
        text = it
    }
)
Run Code Online (Sandbox Code Playgroud)

我们可以使用 autoCorrect = false。但是,根据文档,自动更正参数:

“通知键盘是否启用自动更正。仅适用于基于文本的KeyboardType,例如KeyboardType.Email、KeyboardType.Uri。它不会应用于KeyboardType,例如KeyboardType.Number。大多数键盘实现都会忽略KeyboardType的此值,例如键盘类型.文本。”

因此,请小心您使用的键盘类型。