C# 如何更新Android按钮可访问性特征

C# 如何更新Android按钮可访问性特征,c#,android,xamarin,C#,Android,Xamarin,我很好奇是否有可能更新安卓按钮的特征?我目前有一个按钮,作为一个网页的链接。出于可访问性的目的,当用户高亮显示按钮时,它当前将读取 "{Title : Learn More}, {Type : Button}, {Hint : Double tap to learn more}" 我很好奇是否可以更新类型?默认情况下,按钮作为按钮读取,因为它就是这样。我很好奇是否有可能将其更新为“链接”而不是“按钮” 非常感谢您的帮助。在发布此消息时,我无法获取相关信息 是的 您应该创建一个自定义的可访问性委

我很好奇是否有可能更新安卓按钮的特征?我目前有一个按钮,作为一个网页的链接。出于可访问性的目的,当用户高亮显示按钮时,它当前将读取

"{Title : Learn More}, {Type : Button}, {Hint : Double tap to learn more}"
我很好奇是否可以更新类型?默认情况下,按钮作为按钮读取,因为它就是这样。我很好奇是否有可能将其更新为“链接”而不是“按钮”

非常感谢您的帮助。在发布此消息时,我无法获取相关信息

是的

您应该创建一个自定义的可访问性委托compat对象,您可以在其中通过重写其onInitializeAccessibilityNodeInfo()方法来指定其角色

然后,可以将此辅助功能委托设置为视图

比如说:

            @Override
            public void onInitializeAccessibilityNodeInfo(View view, AccessibilityNodeInfoCompat info) {
                super.onInitializeAccessibilityNodeInfo(view, info);
                if (role != null) {
                    CharSequence role;
                    switch (role) {
                        case Button:
                            roleDescription = "button"
                            break;
                        case Link:
                            roleDescription = "link"
                            break;
                    info.setRoleDescription(roleDescription);
                }
            }
        };