【问题标题】:Jetpack Compose - TextField cuts text on the bottomJetpack Compose - TextField 在底部剪切文本
【发布时间】:2021-11-07 08:40:04
【问题描述】:

我有一个文本字段

TextField(
        keyboardOptions = KeyboardOptions.Default.copy(
            imeAction = ImeAction.Search,
        ),
        keyboardActions = KeyboardActions(
            onSearch = {
                onSearchTextSubmit(searchText)
            },
        ),
        modifier = Modifier.focusRequester(focusRequester),
        singleLine = true
    )

我点击键盘上的“Enter”,输入被从底部截断。

TextField 位于 TopAppBar 内,我没有明确设置任何高度或文本大小。 减小文本大小是让它看起来不错的唯一方法,还是有一种方法可以强制 TextField 开箱即用地调整其高度或文本大小?

【问题讨论】:

  • 您指定了singleLine = true,那么您希望多行文本的行为是什么?也许您只需要删除换行符?
  • 我对用户可以输入的字符数有限制,所以我总是希望它是 1 行。即使是 1 行,文本也会被剪切。像“j”这样的字符的底部是不可见的
  • 在代码中添加可变状态值后,所有字符都不会被裁剪。请提供[最小可重现示例]。(stackoverflow.com/help/minimal-reproducible-example),或至少提供视频

标签: android kotlin android-jetpack-compose


【解决方案1】:

您需要通过如下所示的修饰符来增加字段的高度:

modifier = Modifier.height(56.dp), //56 or higher!

因此,今天的选择是:

  1. 增加TextField的高度
  2. 减小字体大小

【讨论】:

猜你喜欢
  • 2022-08-18
  • 1970-01-01
  • 1970-01-01
  • 2021-10-01
  • 1970-01-01
  • 2021-09-20
  • 1970-01-01
  • 2020-03-11
  • 2021-11-14
相关资源
最近更新 更多