将 UIView 添加到 UIWindow 的子视图时未检测到画外音

Posted

技术标签:

【中文标题】将 UIView 添加到 UIWindow 的子视图时未检测到画外音【英文标题】:Voiceover not detecting when adding UIView to UIWindow's subview 【发布时间】:2020-08-16 14:20:28 【问题描述】:

我在整个应用程序中都使用了常见的UIPickerView。所以,我用了UIWindow

代码:

@IBAction func show_Picker(_ sender: UIButton)  //ProfileViewController
   let testController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "pick") as! PickerViewController
   UIApplication.shared.keyWindow?.addSubview(testController.view)

Voiceover 未检测到此 UIWindow 子视图。

PickerViewController 已显示,但 VoiceoverProfileViewController 本身中循环。

我不知道如何在PickerViewController 中激活Voiceover

谁能帮我解决这个问题?

【问题讨论】:

【参考方案1】:

告诉 VoiceOver 一个占屏幕主要部分的视图已显示为 UIAccessibility.post(notification: .screenChanged, argument: newViewOrNil)

【讨论】:

以上是关于将 UIView 添加到 UIWindow 的子视图时未检测到画外音的主要内容,如果未能解决你的问题,请参考以下文章

直接在 UIWindow 中添加 UIButton 和 UITextField 或在 UIView 中添加

UIWindow 和 UIView addSubview 问题

iOS小技能:特殊的UIView(UIWindow)

独特区分 UIView

将 UIView 添加到已添加到 MainView 的子视图中

将 UITextView 添加为 UIView 中的子视图,然后添加到 UIScrollView