gpt4 book ai didi

iOS 键盘、VoiceOver 和 accessibilityViewIsModal

转载 作者:可可西里 更新时间:2023-11-01 06:15:23 33 4
gpt4 key购买 nike

我正在尝试为 VoiceOver 用户制作一个 inputAccessoryView 和键盘模式,这样他们就不会迷路。设置:

view.accessibilityViewIsModal = YES;
textField.inputAccessoryView = view;

使带键盘的 View 模态可见但不可用 - 它在模态视图之外。

接下来我在键盘出现后尝试了这个:

textField.inputAccessoryView.superview.accessibilityViewIsModal = YES;

这似乎有点越界但几乎可以工作 - 但 B 之后的物理键(N、M 空格等)不可导航。

接下来是这个:

textField.inputAccessoryView.superview.superview.accessibilityViewIsModal = YES;

一切正常。该 View ,BTW 日志如下:

<UITextEffectsWindow: 0x17170290; frame = (0 0; 320 568); opaque = NO; gestureRecognizers = <NSArray: 0x17170710>; layer = <UIWindowLayer: 0x17170430>>

我的问题是:我这是在做什么蠢事?看起来是这么回事。合法吗? UITextEffectsWindow 是私有(private)的,但我实际上并没有使用它,只是利用了它是一个 View 这一事实。

解决该问题的任何输入或方法都会有所帮助。

最佳答案

这并不违法,但可以肯定地说它将在未来的 iOS 版本中停止工作。

例如,在 iOS 6 中,开发人员可以通过调用 self.superview 从单元格转到其 TableView 。在 iOS 7 中,现在中间有一个私有(private)类 View 。

您可能希望采用更动态的方法,例如向上遍历 View 层次结构,直到找到具有正确框架的 View ,或者将您需要的所有 View 作为其 subview 。类似approach for the UITableViewCell problem can be found here .

关于iOS 键盘、VoiceOver 和 accessibilityViewIsModal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20873560/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com