gpt4 book ai didi

android - Jetpack Compose 如何在 BasicTextField 中居中提示和输入

转载 作者:行者123 更新时间:2023-12-04 13:08:49 44 4
gpt4 key购买 nike

我正在尝试制作一个填充屏幕宽度的editText,它的提示和输入从屏幕中心开始。
我选择 BasicTextField,因为 TextField 和 OutlinedTextFields 的样式对我来说完全没有必要。
我试过这样做。

      BasicTextField(
value = loginId,
onValueChange = {
loginId = it
},
decorationBox = {
Text(text = "Input your id", modifier = Modifier.align(Alignment.CenterHorizontally).fillMaxWidth())
},
modifier = Modifier
.fillMaxWidth()
.padding(start = 19.dp,
bottom = 4.5.dp, end = 19.dp, top = 40.dp)
.background(Purple200)
.align(Alignment.CenterHorizontally),
)
这没有效果。我能用这个做什么?

最佳答案

您可以申请 TextAlign.Center 给您的Text .您可以使用 styletextAlign特性。
就像是:

Text(text = "Input your id",
modifier = Modifier.fillMaxWidth(),
style = LocalTextStyle.current.copy(textAlign = TextAlign.Center))
或者:
 Text(text = "Input your id",
modifier = Modifier.fillMaxWidth(),
textAlign = TextAlign.Center)
enter image description here
也可以正常工作,因为您使用的是 decorationBox ,您必须调用 innerTextField在您的 decorationBox 中恰好出现一次.
就像是:
 decorationBox = {  innerTextField ->
//....
if (loginId.isEmpty()) {
Text("....")
}
innerTextField() //<-- Add this
}

关于android - Jetpack Compose 如何在 BasicTextField 中居中提示和输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67832923/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com