UITextView可链接标签辅助功能配音问题

问题描述 投票:2回答:3

我有一个UITextView,部分文本是可点击的。链接工作。当我在iPhone的设置中打开辅助功能并打开Voice over时,会读出textview的文本,但链接不起作用。启用textview的故事板上的辅助功能,并在辅助功能属性下选择链接,并且在打开语音时链接不起作用。我也尝试将isAccessbilityElement = true添加到textview,结果没有运气。

UITextView将添加到表视图上的自定义单元格中。

提前感谢您的建议。

ios swift uitextview accessibility voiceover
3个回答
1
投票

我没有解决方案。我还在找。

现在我在我的应用程序中使用UIWebview而不是UITextView。使用UIAccessiblity,UIWebview更有效。


0
投票

您必须覆盖默认行为以选择UITextViews测试或您提供的链接。看到这堂课UIAccessibilityElement。希望这对你有所帮助


0
投票

该问题涉及在必须在UITextView中激活链接时使用的specific VoiceOver gesture

我创建了一个空白项目,包括以后的代码片段,以获取myTextView元素中的2个URL:

class TextViewURLViewController: UIViewController, UITextViewDelegate {

    @IBOutlet weak var myTextView: UITextView!

    let myString = "Follow this developers guide if you already know the VoiceOver gestures."
    let myDevURL = "https://a11y-guidelines.orange.com/mobile_EN/dev-ios.html"
    let myGesturesURL = "https://a11y-guidelines.orange.com/mobile_EN/voiceover.html"


    override func viewDidLoad() {

        let attributedString = NSMutableAttributedString(string: myString)

        attributedString.addAttribute(.link,
                                      value: myDevURL,
                                      range: NSRange(location: 12,
                                                     length: 17))

        attributedString.addAttribute(.link,
                                      value: myGesturesURL,
                                      range: NSRange(location: 52,
                                                     length: 19))

        myTextView.attributedText = attributedString
        myTextView.font = UIFont(name: myTextView.font!.fontName,
                                 size: 25.0)
    }


    func textView(_ textView: UITextView,
                  shouldInteractWith URL: URL,
                  in characterRange: NSRange,
                  interaction: UITextItemInteraction) -> Bool {

        UIApplication.shared.open(URL, options: [:])
        return false
    }
}

按照以下步骤激活链接:

  1. 用适当的手势获取转子links项目。
  2. 用一根手指向上或向下滑动即可到达链接。
  3. 双击并按住,直到您在步骤4中看到屏幕。

description of the first three steps

  1. 链接上方会显示一种弹出窗口。
  2. 出现操作表后,向右轻拂以获取Open操作。
  3. 双击打开URL并在步骤7中获取最后一个屏幕。

description of the last three steps

唯一要记住的是双击并按住,直到弹出窗口出现在链接上方。

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