无法获取tableView的contentOffset

时间:2016-04-20 13:41:02

标签: ios objective-c uitableview

我无法使用此代码滚动tableView的位置。

CGPoint offset =  tableView.contentOffset;

当我移动ViewController时,我想在ViewController位置之前滚动tableView→B ViewController→一个ViewController 但它总是“(0,0)”....

更新 ------------ 我可以获得contentOffset并实现它

[self.tableView setContentOffset:ScrollOffset animated: YES];

但是细胞的顺序发生了变化。 例如,单元格的顺序是1,2,3,4,5,6。 如果我选择第4个单元格,移动到下一个ViewController并在ViewController之前返回,单元格的顺序已更改为“4,5,6,1,2,3”.... 我不想改变order.just滚动tableView。

我该如何解决?

3 个答案:

答案 0 :(得分:1)

您何时尝试获取contentOffset?

通过在UIScrollView上使用以下委托功能,您可以在每次滚动视图时获取contentOffset。

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
        NSLog(@"%@", NSStringFromCGPoint(scrollView.contentOffset));

}

我希望这可以帮助您找到问题的原因

答案 1 :(得分:0)

您可以为UITableView设置内容偏移,如下所示,这将滚动您的tableview:

CGPoint Offset = CGPointMake(0, 60);//pass your values here.

setContentOffset如下:

[tableView setContentOffset:Offset animated: YES];

OR

[tableView setContentOffset:CGPointMake(0, 60) animated: YES];

答案 2 :(得分:0)

你能清楚地描述这个问题吗?我们可以在scrollViewDidScroll委托中轻松获取tableView的contentOffset。