Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.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 可访问性:将voice-over焦点移动到UITableViewController中tableView中的第一个单元格_Ios_Uitableview_Accessibility_Navigationcontroller - Fatal编程技术网

Ios 可访问性:将voice-over焦点移动到UITableViewController中tableView中的第一个单元格

Ios 可访问性:将voice-over焦点移动到UITableViewController中tableView中的第一个单元格,ios,uitableview,accessibility,navigationcontroller,Ios,Uitableview,Accessibility,Navigationcontroller,我有一个主窗口,其中有两个UITableViewController。在第一个tableViewController(左窗格)中选择单元格时,将填充右侧的tableViewContainer。在Voice-over模式中,我希望当第一个tableViewController中的单元格被选中时,第二个ViewController中的第一个单元格获得焦点,以便从那里开始轻弹顺序。请注意,我已经尝试了以下两种方法: 1) 使第二视图控制器的第一个单元成为第一响应者 - (UITableViewCell

我有一个主窗口,其中有两个UITableViewController。在第一个tableViewController(左窗格)中选择单元格时,将填充右侧的tableViewContainer。在Voice-over模式中,我希望当第一个tableViewController中的单元格被选中时,第二个ViewController中的第一个单元格获得焦点,以便从那里开始轻弹顺序。请注意,我已经尝试了以下两种方法:

1) 使第二视图控制器的第一个单元成为第一响应者

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{          
    UITableViewCell *outCell =(UITableCellView*)  [tableView dequeueReusableCellWithIdentifier:MyIdentifier];
    if (indexPath.row == 0)
    {
        [outCell becomeFirstResponder];
    }
}
2) 我还尝试发布布局更改通知,将单元格作为第一个可访问性项目

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{          
    UITableViewCell *outCell =(UITableCellView*)  [tableView dequeueReusableCellWithIdentifier:MyIdentifier];

     if (indexPath.row == 0)
     {
         UIAccessibilityPostNotification(UIAccessibilityLayoutChangedNotification, outCell);
     }
}
上述方法都不起作用。你知道我还能尝试什么吗?或者上述方法有什么问题吗

请注意:我已经阅读了视图控制器的文档(将画外音光标移动到特定元素)。尝试在我的示例中发布LayoutChanged通知以及ScreenChangedNotifications,并尝试使用示例代码(ListAdder-,它也像我们一样使用NavigationController),但上述操作即使在示例中也不起作用


知道为什么吗?

我通过发布屏幕更改通知解决了这个问题。该调用的第二个参数是要选择其第一个单元格的表视图的视图


UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification,[[self-nextTableViewController]视图];

您是否尝试过
UIAccessibilityScreenChangedNotification
?您也可以尝试将通知移动到
tableView:willDisplayCell:ForRowatingIndexPath