辅助功能:在密码输入字段上禁用 VoiceOver / Talkback

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

是否可以在密码输入字段上禁用 VoiceOver (iOS) / Talkback (Android),而无需为每个平台推出自定义键盘?

我不希望用户输入敏感信息(如密码或 PIN)时大声说出。

android ios xamarin.forms accessibility
1个回答
0
投票

通过使用 View.onInitializeAccessibilityNodeInfoView.onPopulateAccessibilityEvent 覆盖 View.AccessibilityDelegate

,可以对某些 TextEdit 视图禁用输入文本的 Talkback 画外音
    passwordView.setAccessibilityDelegate(new View.AccessibilityDelegate() {
        public void onInitializeAccessibilityNodeInfo(View host,                                                          AccessibilityNodeInfo info) {
            super.onInitializeAccessibilityNodeInfo(host, info);
            // 'setPassword(true)' is necessary for disabling voiceover
            //  for whole content of password field with visible content mode
            info.setPassword(true);
        }
        public void onPopulateAccessibilityEvent(View host, AccessibilityEvent event) {
            //do nothing -> no need to perform annotation of editText content changes
        }
    });
© www.soinside.com 2019 - 2024. All rights reserved.