UITableView在添加新单元格时滚动

时间:2012-08-02 16:07:52

标签: xcode uitableview scroll

在我的应用中,我有一个下拉刷新功能。基本上它的作用是它在我的UITableView顶部增加了一些单元格。但是,当我这样做时,屏幕会自动向下滚动。我想在加载新单元格时保持我在屏幕上的位置。

[dataPosts insertObject:[[MainButton alloc] initWithFrame:CGRectMake(0, 0, 320, 260) withData:0 hasNick:[self createRandomStringWithLength:140]] atIndex:0];

dataPosts是我的UITableView的数据数组。 MainButton是一个大小为320,260的UIView,它作为视图添加到UITableViewCell中。所以每当我向我的数据添加一个新条目时,该表会自动向下滚动260个单位,但我希望我的位置保持不变。提前谢谢。

-C

1 个答案:

答案 0 :(得分:0)

当要插入新行时,您知道要插入多少行。因此,即使在顶部插入新行,您也可以将UITableView的scrollToRowAtIndexPath:atScrollPosition:animated:方法调用到同一位置。

E.g: 目前显示10行,第1行位于顶部。 现在假设,要插入新的20行。插入它们没有动画。 现在,使用21的indexPath.row调用上面提到的方法而不用动画。

希望有所帮助。如果您正在寻找其他内容,请告诉我。