我想让自定义键盘在可访问性方面像 iOS 软件键盘一样执行。当按下按钮将字母添加到 UITextField 时,VoiceOver 应以“添加的字符音”说出该字母。当按下按钮从 UITextField 中删除一个字母时,VoiceOver 应以“已删除字符音”说出该字母。
这是我尝试的:
- 在情节提要的视图控制器中创建了一个 UITextField。
- 在情节提要的视图控制器中创建了两个标记为“Type”和“Backspace”的 UIButton。
- 将两个 UIButton 的可访问性特征设置为键盘键。
- 将故事板 UITextField 连接到 IBOutlet UITextField 实例 textField。
- 将情节提要的“类型”UIButton 连接到 IBAction,-type。
- 将故事板“Backspace”UIButton 连接到 IBAction,-backspace。
- 实现 -type 为:
[[self textField] insertText:@"a"];
. - 实施 -backspace 为:
[[self textField] deleteBackward];
。 - 使 textField 成为第一响应者。
我也尝试过同样的事情,将按钮移动到设置为 textField 的 inputView 的 UIView 中。
字符已正确添加到文本字段中或从文本字段中删除,但 VoiceOver 不会说出这些字符。我怎样才能使这项工作?
编辑:
硬件键盘说话正确。只有自定义软件键盘没有按应有的方式说话。