如何使 TextField 不可点击/不可聚焦?

Dem*_*god 2 android kotlin android-jetpack-compose android-compose-textfield

我有一个简单的OutlinedTextField带有标签和文本的。根据设计,它不应该是集中的和/或可打字的。TextField在单击事件中,应用程序应打开一个“选择器”对话框,并且在选择时,应更新的值。

因此,TextField 不应该:

  • 能够集中注意力
  • 打开键盘
  • 接受文本插入或输入它应该:
  • 可点击

作为备份选项,我尝试使一个简单的Text看起来像 anOutlinedTextField我认为使其看起来与 相同更困难OutlinedTextField

有什么建议么?

Gab*_*tti 5

添加enabled = falseOutlinedTextField

当 时false,文本字段将不可编辑或不可聚焦,文本字段的输入将不可选择,视觉上文本字段将出现在禁用的 UI 状态

OutlinedTextField(
    value = text,
    onValueChange = {
        text = it
    },
    enabled = false
)
Run Code Online (Sandbox Code Playgroud)

如果您想为禁用状态设置自定义颜色,只需添加:

    colors =  TextFieldDefaults.outlinedTextFieldColors(
        disabledTextColor = LocalContentColor.current.copy(LocalContentAlpha.current),
        disabledBorderColor =  MaterialTheme.colors.onSurface.copy(alpha = ContentAlpha.disabled),
        disabledLabelColor = MaterialTheme.colors.onSurface.copy(ContentAlpha.medium)
    )
Run Code Online (Sandbox Code Playgroud)