Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS Objective-C画外音更新可用的可访问元素_Ios_Objective C_Voiceover - Fatal编程技术网

iOS Objective-C画外音更新可用的可访问元素

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

当到达ViewController时,我遇到了画外音聚焦错误视图(不是第一个)的问题。我试图通过使accessibilityElements只包含我想关注的视图来解决这个问题,并在1秒后清除它

- (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放在那里时。