iOS7 UITableView scrollsToTop不起作用

时间:2013-10-15 06:09:43

标签: ios uitableview uiscrollview

我的视图控制器中只有一个UITableView,而且还有我的代码:

@interface MyViewController ()<UITableViewDataSource,UITableViewDelegate>

self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, [UIScreen mainScreen].bounds.size.height) style:UITableViewStylePlain];
self.tableView.delegate = self;
self.tableView.dataSource = self;
self.tableView.scrollsToTop = YES;
[self.view addSubview:self.tableView];

它甚至没有运行:

- (BOOL) scrollViewShouldScrollToTop:(UIScrollView*) scrollView

我不知道为什么,我该如何解决这个问题?非常感谢你。

3 个答案:

答案 0 :(得分:7)

屏幕上是否有多个滚动视图或tableview或collectionview?

如果是这样,只有其中一个可以将scrollsToTop设置为YES,否则iOS7不会将它们中的任何一个滚动到顶部。

正如苹果公司的文档所说,“在iPhone上,如果屏幕上有多个滚动视图,将scrollsToTop设置为YES,则滚动到顶部的手势无效。”

来自Can't get scrollsToTop working on iOS7

的参考资料

答案 1 :(得分:0)

ScrollsToTop不是UITableViewDelegate / UITableViewDatasource的方法。 尝试将UIScrollDelegate添加到MyViewController界面。

答案 2 :(得分:0)

您可能忘记使用ScrollView Delegate。

@interface MyViewController ()<UITableViewDataSource,UITableViewDelegate,UIScrollViewDelegate>

instead of 

@interface MyViewController ()<UITableViewDataSource,UITableViewDelegate>