如何自动滚动UITableView?

时间:2010-04-15 16:12:04

标签: iphone objective-c cocoa-touch uitableview

我正在尝试做一些有趣的事情。

我正在提取一些JSON数据并在UITableView中填充单元格。如何让UITableView滚动大约一秒钟左右?我想说的是,随着新数据的进入,表格正在滚动,因此它正在流式传输。

有什么想法吗?

4 个答案:

答案 0 :(得分:4)

是的,请使用scrollToRowAtIndexPath:atScrollPosition:animated:

如果您想要更精细的控制并且可以精确计算您的滚动位置应以像素为单位,您还可以使用UIScrollView的scrollRectToVisible:animated:。 (UITableView是UIScrollView的子类。)

但是如果你只是添加单元格,听起来像你也可以使用insertRowsAtIndexPaths:withRowAnimation:,这也是“有趣的”。

答案 1 :(得分:1)

就这样做

[table reloadData];



NSIndexPath *myIP = [NSIndexPath indexPathForRow:[arrayIn count]-1 inSection:0] ;


  [table scrollToRowAtIndexPath:myIP atScrollPosition:NULL animated:YES];

在其中arrayIn是您的表所填充的数组的任何地方。

答案 2 :(得分:0)

您可以使用uitableviews scrollToRowAtIndexPath执行此操作....继承人reference

您可以随时调用此方法滚动表格视图

答案 3 :(得分:0)

你可以调用performSelector:withObject:afterDelay:用于计时器效果 - 虽然如果你真的每秒都在提取数据,那么你最好只需要重新加载数据。