iOS Objective-C画外音更新可用的可访问元素
当到达ViewController时,我遇到了画外音聚焦错误视图(不是第一个)的问题。我试图通过使accessibilityElements只包含我想关注的视图来解决这个问题,并在1秒后清除它iOS Objective-C画外音更新可用的可访问元素,ios,objective-c,voiceover,Ios,Objective C,Voiceover,当到达ViewController时,我遇到了画外音聚焦错误视图(不是第一个)的问题。我试图通过使accessibilityElements只包含我想关注的视图来解决这个问题,并在1秒后清除它 - (void)viewDidLoad { [super viewDidLoad]; self.view.accessibilityElements = @[self.firstView]; dispatch_after(dispatch_time(DISPATCH_TIME_NO
- (void)viewDidLoad
{
[super viewDidLoad];
self.view.accessibilityElements = @[self.firstView];
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_SEC), dispatch_get_main_queue(), ^{
self.view.accessibilityElements = nil;
});
}
这是可行的,但是有一个缺点。焦点在firstView上变得呆滞,这意味着向左和向右滑动不会改变焦点。唯一的方法是点击另一个元素
那么,如何通知系统accessibilityElements发生了更新?我希望滑动手势能够正常工作。当您将
可访问性元素设置为nil时,请使用将可访问性元素作为传入参数来通知更新
您可以通知系统并根据需要使用刷卡手势。谢谢您的建议!它不适用于UIAccessibilityScreenChangedNotification
,但是它确实适用于UIAccessibilityLayoutChangedNotification
,将第一视图作为参数,或者当我将nil放在那里时。