UITableView,setContentOffset动画:NO不会在iPad上滚动

时间:2011-08-13 21:41:23

标签: ipad uitableview ios4

我有一个简单的UITableView;我试图强制它滚动到viewDidLoad中的某个位置,所以我可以隐藏表格中的第一行(除非用户向上滚动)。我的第一行高度为90.0px,所以我试图强制我UITableView滚动:

[contentTable setContentOffset: CGPointMake(0, 90.0f) animated: NO];

问题是使用animated: NO什么都不做; UITableView不会滚动。但是,如果我使用animated: YES,那么事情就可以了;滚动,但让它动画的缺点是我的UI在滚动期间似乎闪烁,这根本不是我想要的。

任何想法为什么?如果我的UITableView有1行或20行似乎没关系,只有在我将animated: YES传递给setContentOffset时才会滚动。

我目前正在运行Xcode 4.2,我在我的第一代iPad上使用iOS 4.3.3。


编辑:另外还有一件事 - scrollToRect似乎根本不起作用,无论我为它的animated属性传递了什么价值。有什么东西我从根本上误解了在iOS上滚动吗?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

我很确定UITableView滚动有一些问题。我正在使用:

selectRowAtIndexPath:indexPath animated:YES scrollPosition:UITableViewScrollPositionMiddle

应该选择indexPath指示的行,然后滚动表,使选中的行位于视图的中间。它在模拟器上可靠地工作,但在iPhone上它有时滚动,有时不滚动。通常(但不总是)它在前几次工作然后停止工作(即,它不滚动并且所选单元格在屏幕外)。但始终选择正确的单元格。我无法确定是否滚动的内容。我向Apple提交了一份错误报告,但没有回复。