Abh*_*bhi 5 android accessibility android-jetpack-compose
致力于增强我的应用程序的辅助功能。
从Docs中,我可以看到Card
和onClick
作为onClickLabel
API 的一部分。
对于没有 的可组合项onClick
,我们可以使用Modifier.clickable
or Modifier.semantics
。
但是Button
、IconButton
、FloatingActionButton
和TextButton
呢OutlinedButton
?
可组合项onClick
作为 API 的一部分,但没有onClickLabel
.
这按预期工作。但这是编写这段代码的正确方法吗?
IconButton(
onClick = navigateUp,
modifier = Modifier.clickable(
onClickLabel = "Navigate up",
onClick = {},
)
) {
Icon(
imageVector = Icons.Rounded.ArrowBack,
contentDescription = stringResource(
id = R.string.top_app_bar_content_description_navigate_up,
),
)
}
Run Code Online (Sandbox Code Playgroud)
这似乎太令人困惑IconButton
了onClick
。所以我不能完全同意Modifier.clickable
或Modifier.semantics
。
同样Modifier.clickable
也是期待onClick
。
因此,我有两个onClick
用于单个可组合组件,这很容易导致许多难以调试的错误。
变更原因,
读取“双击向上导航”而不是默认的“双击激活”。
PS:
撰写版本 - 1.0.4
在这种情况下您不需要,Modifier.clickable
因为:
onClick
lambda处理点击Icon
一个contentDescription
可访问字段所以你需要的就是这个
IconButton(
onClick = navigateUp,
) {
Icon(
imageVector = Icons.Rounded.ArrowBack,
contentDescription = stringResource(
id = R.string.top_app_bar_content_description_navigate_up,
),
)
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4903 次 |
最近记录: |