TableView在Apple TV中不滚动

时间:2019-07-03 07:44:46

标签: objective-c uitableview tvos

我是Apple TV的新手。我为tableview编写了代码。但不会滚动。

我的代码是

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    UITableView *tableView = [[UITableView alloc]initWithFrame:self.view.bounds];
    tableView.delegate = self;
    tableView.dataSource = self;
    [self.view addSubview:tableView];

}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return 100;
}

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

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];

    if (cell == nil) {
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"];
    }
    cell.textLabel.text = [NSString stringWithFormat:@"index %d",indexPath.row];
    return cell;
}
- (void)tableView:(UITableView *)tableView didHighlightRowAtIndexPath:(NSIndexPath *)indexPath{
    NSLog(@"index %d",indexPath.item);
}
- (void)tableView:(UITableView *)tableView didUpdateFocusInContext:(UITableViewFocusUpdateContext *)context withAnimationCoordinator:(UIFocusAnimationCoordinator *)coordinator{

}

1 个答案:

答案 0 :(得分:0)

请参阅文档here。 简短答案:

在集合视图和表视图中支持焦点的提示:

  • collectionView:canFocusItemAtIndexPath:方法与 UICollectionViewDelegate类或 tableView:canFocusRowAtIndexPath:方法与 UITableViewDelegate类,用于指定是否应使用特定的单元格 专注。此操作与覆盖类似 canBecomeFocused自定义视图中的UIView方法。

    使用两个中定义的remembersLastFocusedIndexPath属性 UICollectionViewUITableView,以指定是否应关注焦点 当焦点离开时返回上一个焦点索引路径,然后 重新进入集合视图或表视图。

希望这会有所帮助。