compose Flowrow和CollectionInfo语义可访问性

问题描述 投票:0回答:1
CollectionInfo
CollectionItemInfo

行动态的行和列。

我必须创建一个可以处理行和列计算的自定义流动。我是否缺少可以在这里提供帮助的东西?
代码看起来与下面相似:

FlowRow( modifier = Modifier .selectableGroup() .semantics { collectionInfo = CollectionInfo(?) }) { repeat(5) { RadioButton(selected = selected, onClick = {}, modifier = Modifier.semantics { collectionItemInfo = CollectionItemInfo(?) } } }

CollectionIteminfo仅对网格样结构有效。和, 这里的CollectionInfo足以告诉Talkback,即流动是一个集合,然后您将每个项目单独描述与项目级的ContentDescription(或其他语义属性)。 我的榜样是:对讲说像这样

“未选择选项x主台X n”
android android-jetpack-compose accessibility android-jetpack
1个回答
0
投票
,如果选择了广播按钮,则 “选项选项x主台X n”

x是当前聚焦的radiobutton,n是总项目。 您可以修改消息。

@Composable fun FlowRowExample(modifier: Modifier = Modifier) { val items = remember { List(30) { "Option ${it + 1}" } } Column( modifier = Modifier.fillMaxSize().then(modifier), verticalArrangement = Arrangement.Center, horizontalAlignment = Alignment.CenterHorizontally ) { FlowRow(modifier = Modifier .selectableGroup() .semantics { contentDescription = "List of items" collectionInfo = CollectionInfo( rowCount = 1, columnCount = items.size ) }) { items.forEachIndexed { index, item -> RadioButton( selected = index == 2, onClick = {}, modifier = Modifier.semantics { contentDescription = item } ) } } } }

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.