在 Jetpack Compose 中实现焦点突出显示的最佳方式?

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

此文档 重点介绍了如何在 Jetpack Compose 中实现高级焦点突出显示,以提高应用程序的可访问性。这里的问题是它使用自定义指示,它在应用时替换了可点击元素的默认指示。这反过来会禁用组件的默认点击处理效果,例如波纹和按压效果,这是不好的。

在 Jetpack Compose 中为您自己的组件实现焦点突出显示的最佳方法是什么?

android android-jetpack-compose accessibility
1个回答
0
投票

我通过创建自己的自定义修改器解决了这个问题。

fun Modifier.focusHighlight() = composed {
    this.onFocusChanged {
        if (it.hasFocus) {
            drawWithContent {
                drawRect(size = size, color = Color(Color.WhatEver), alpha = 0.4f)
            }
        }
    }
}

看起来工作正常。我将此添加到我为 Google 创建的问题中。让我们看看他们有何评论。 IMO 这种功能应该由平台提供。

© www.soinside.com 2019 - 2024. All rights reserved.