Android Compose搜索框实现
-
class MainActivity : ComponentActivity() {
-
-
override fun onCreate(savedInstanceState: Bundle?) {
-
super.onCreate(savedInstanceState)
-
setContent {
-
Column(Modifier.fillMaxSize()) {
-
Spacer(Modifier.height(50.dp))
-
searchBar()
-
}
-
}
-
}
-
}
-
-
@Composable
-
fun searchBar() {
-
var text by remember { mutableStateOf("")}
-
Box(modifier = Modifier.background(Color(0xFFD3D3D3)).padding(50.dp)) {
-
BasicTextField(value = text, onValueChange = { text = it }, decorationBox = {
-
Row(verticalAlignment = Alignment.CenterVertically,
-
modifier = Modifier.padding(horizontal = 8.dp)) {
-
Icon(imageVector = Icons.Filled.Search, contentDescription = "")
-
Box(modifier = Modifier.padding(horizontal = 10.dp).weight(1f),
-
contentAlignment = Alignment.CenterStart) {
-
if (text.isEmpty()) {
-
Text(text = "输入点东西康康吧~" ,
-
style = TextStyle(Color(0,0,0,128))
-
)
-
}
-
it()
-
}
-
if (text.isNotEmpty()) {
-
IconButton(onClick = { text = ""}, modifier = Modifier.size(16.dp)) {
-
Icon(imageVector = Icons.Filled.Close, contentDescription = "")
-
}
-
}
-
}
-
}, modifier = Modifier.padding(10.dp).background(Color.White, CircleShape)
-
.height(30.dp).fillMaxWidth()
-
)
-
}
-
}
运行后的效果:
这个搜索框用Compose实现起来看上去有点嵌套地狱,主要还是不熟悉控件里面的属性
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhigcfaj
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
excel图片置于文字下方的方法
PHP中文网 06-27 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
微信提示登录环境异常是什么意思原因
PHP中文网 04-09 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22 -
微信人名旁边有个图标有什么用
PHP中文网 03-11