You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Compose TextField 如何设置固定显示3行

要实现无内容时也默认显示3行的固定高度TextField,只需在原有代码基础上新增minLines = 3参数即可。minLines参数可以指定输入框的最小展示行数,和传统XML中EditText.lines属性效果等价,搭配你已经设置的maxLines = 3就能实现无论输入内容多少,输入框始终固定显示3行的效果。

你原有代码只设置了maxLines限制最多显示3行,但未指定最小行数,所以无内容时只会默认显示单行高度。

调整后的完整代码如下:

OutlinedTextField(
    value = currentText,
    onValueChange = { currentText = it },
    label = { Text ("Label") },
    maxLines = 3,
    minLines = 3, // 新增最小行数配置
    modifier = Modifier.fillMaxWidth().wrapContentHeight().padding(16.dp),
    singleLine = false
)

补充说明:minLines参数从Compose Material 1.2.0版本开始提供,如果你使用的依赖版本低于该版本,可先升级依赖,也可通过硬编码高度的方式临时实现:

OutlinedTextField(
    value = currentText,
    onValueChange = { currentText = it },
    label = { Text ("Label") },
    maxLines = 3,
    modifier = Modifier
        .fillMaxWidth()
        .height(120.dp) // 可调整数值适配你需要的3行高度
        .padding(16.dp),
    singleLine = false
)

硬编码高度的适配性不如minLines参数,优先推荐使用前者方案。

内容的提问来源于stack exchange,提问作者anil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:39:03