首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在TextFieldDefaults.OutlinedTextFieldDecorationBox上使用自定义高度

如何在TextFieldDefaults.OutlinedTextFieldDecorationBox上使用自定义高度
EN

Stack Overflow用户
提问于 2022-11-03 07:55:29
回答 1查看 43关注 0票数 1

我正在尝试使用Android撰写创建一个自定义TextField,请参阅下面

代码语言:javascript
运行
复制
                  TextFieldDefaults.OutlinedTextFieldDecorationBox(
                    contentPadding = PaddingValues(vertical = 10.dp),
                    value = searchText,
                    innerTextField = innerTextField,
                    enabled = enabled,
                    singleLine = singleLine,
                    visualTransformation = VisualTransformation.None,
                    interactionSource = interactionSource,
                    colors = textFieldColors,
                    leadingIcon = {
                        Icon(
                            modifier = Modifier.size(leadingIconSize),
                            painter = painterResource(id = R.drawable.ic_search),
                            contentDescription = ""
                        )
                    },
                    placeholder = {
                        Text("what is doin ")
                    }
                )

由于设计要求,文本字段的高度应为36 of,而文本字段本身的高度约为56 of。

我找不到任何信息来定制这个值,所以我使用参数contentPadding来实现这个目标。

不过,对我来说似乎太丑了。还有其他方法来实现这一点吗?

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-03 09:13:45

height修饰符应用于BasicTextField

类似于:

代码语言:javascript
运行
复制
    BasicTextField(
        value = text,
        onValueChange = { text = it },
        modifier = Modifier
            .height(36.dp),
        singleLine = singleLine,
        interactionSource = interactionSource
    ) { innerTextField ->
        TextFieldDefaults.OutlinedTextFieldDecorationBox(
            value = text,
            innerTextField = innerTextField,
            enabled = enabled,
            singleLine = singleLine,
            visualTransformation = VisualTransformation.None,
            interactionSource = interactionSource,
            contentPadding = TextFieldDefaults.textFieldWithoutLabelPadding(
                top = 0.dp,
                bottom = 0.dp 
            )
        )
    }

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74299661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档