Jetpack Compose中Row设置horizontalArrangement不生效问题求助
问题原因
horizontalArrangement参数的作用是分配Row的剩余可用水平空间的排布规则,默认情况下Row的宽度为包裹内容,当Row的总宽度刚好等于所有子控件的宽度总和时,没有多余空间可以分配间隔,你设置的Arrangement.SpaceEvenly自然不会生效。
修复方案
给Row添加Modifier.fillMaxWidth()修饰符,让Row占满父布局提供的可用水平宽度,即可触发布局规则:
@Composable fun SimpleRowArrangement(){ Row( modifier = Modifier.fillMaxWidth(), // 新增该行指定Row占满全宽 horizontalArrangement = Arrangement.SpaceEvenly, verticalAlignment = Alignment.Bottom ) { Text(text = "Row Text 1") Text(text = "Row Text 2") Text(text = "Row Text 3") } }
补充说明
如果你不需要Row占满父布局全宽,也可以通过Modifier.width(xxx.dp)给Row设置固定宽度,只要Row的总宽度大于所有子元素的宽度总和,horizontalArrangement的配置就会正常生效。
内容的提问来源于stack exchange,提问作者Ranjithkumar
相关产品推荐
相关产品推荐

