2013-04-25 110 views
4

我在我的应用中使用UIAccessibilityPostNotificationUIAccessibilityAnnouncementDidFinishNotification。根据this link,通知应当在公告成功完成或者不成功时发布(即,用户滑动到屏幕上的另一个元素)。UIAccessibilityAnnouncementDidFinishNotification在滑动到另一个元素时不会触发

UIAccessibilityAnnouncementDidFinishNotification预计NSNotification dictionary作为一个参数,您可以从中确定说出的数值以及说话是否已完成不间断。如果VoiceOver用户在公告结束之前执行停止发言手势或滑动到其他元素,说话可能会中断。

如果通知完成,它可以正常工作,但如果在完成之前轻扫或点击屏幕,则不会发布通知。任何想法为什么这可能是?它可能是一个错误?如果是这样,有关变通办法的任何建议?我有文本进来,需要按顺序阅读,所以我用这个来同步。即使当用户点击屏幕/做任何事情时,我可以以某种方式将我的说话标志重置为0,那将会很棒。

+1

同样的问题。 – openfrog 2013-07-28 10:09:07

+0

我可以看到你的代码吗?我什至不能让UIAccessibilityInvertColorsStatusDidChangeNotification工作。 – CommaToast 2013-11-04 03:05:14

回答

1

创建自定义视图和自定义视图需要在这里实现协议UIAccessibilityFocus

- (void)accessibilityElementDidBecomeFocused 
- (void)accessibilityElementDidLoseFocus 
- (BOOL)accessibilityElementIsFocused 
+0

有趣。用一点点滚动不需要定制视图。似乎很好。 – 2016-05-05 21:33:19

+0

另一种选择是向UIView或协议扩展添加类别/扩展名(如果您使用的是swift)。唯一的问题是如果你不使用子类,它将适用于所有的UIView。协议扩展/类别仍然需要一个具体的子类。 – user1046037 2016-05-05 23:22:23

相关问题