tvOS UITableView 滚动到单元格
tvOS UITableView scroll to cell
我正在为 tvOS 开始一个新项目。我在 viewcontroller 中以编程方式创建了一个 UITableView。在 UITableView 中,我创建了 5 个单元格。到现在为止一切正常,但是当我尝试以编程方式滚动到单元格 4 时出现问题,所以我正在做:
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:3
inSection:0];
[tableView scrollToRowAtIndexPath:indexPath
atScrollPosition:UITableViewScrollPositionTop
animated:YES];
但是上面的代码什么也没做。它总是从第一个单元格开始并将其突出显示为所选单元格。我希望能够以编程方式从另一个单元格开始,它最突出显示,所以当我使用向下或向上箭头键时,它会从那里滚动,而不是第一个单元格。请帮助我这样做
您接下来应该做的是:
在响应UITableView的viewController中,实现下一个函数:
- (UIView *)preferredFocusedView {
return self.tableView;
}
其中 tableView 是您的 table,然后覆盖下一个函数
- (NSIndexPath *)indexPathForPreferredFocusedViewInTableView:(UITableView *)tableView {
return [NSIndexPath indexPathForRow:_exerciseIndex inSection:0];
}
where _exerciseIndex 您需要关注的索引。
我正在为 tvOS 开始一个新项目。我在 viewcontroller 中以编程方式创建了一个 UITableView。在 UITableView 中,我创建了 5 个单元格。到现在为止一切正常,但是当我尝试以编程方式滚动到单元格 4 时出现问题,所以我正在做:
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:3
inSection:0];
[tableView scrollToRowAtIndexPath:indexPath
atScrollPosition:UITableViewScrollPositionTop
animated:YES];
但是上面的代码什么也没做。它总是从第一个单元格开始并将其突出显示为所选单元格。我希望能够以编程方式从另一个单元格开始,它最突出显示,所以当我使用向下或向上箭头键时,它会从那里滚动,而不是第一个单元格。请帮助我这样做
您接下来应该做的是: 在响应UITableView的viewController中,实现下一个函数:
- (UIView *)preferredFocusedView {
return self.tableView;
}
其中 tableView 是您的 table,然后覆盖下一个函数
- (NSIndexPath *)indexPathForPreferredFocusedViewInTableView:(UITableView *)tableView {
return [NSIndexPath indexPathForRow:_exerciseIndex inSection:0];
}
where _exerciseIndex 您需要关注的索引。