我的iOS应用存在错误。我正在使用UITableView,在其中实现了这样的“拉动刷新” Controller :

self.refreshControl = [[UIRefreshControl alloc] init];
self.refreshControl.backgroundColor = [UIColor clearColor];
self.refreshControl.tintColor = [UIColor blackColor];
[self.refreshControl addTarget:self
                            action:@selector(loadTheXML)
                  forControlEvents:UIControlEventValueChanged];

但是,我有一个小错误。如果我向下滚动表格,并且点击状态栏以滚动到表格顶部,则刷新 Controller 会部分显示。这是正在发生的事情的一个图像:gif link

如果我一次使用此刷新 Controller ,则该错误不再发生,当我点击状态栏时,它会滚动到表格顶部。

关于如何解决此错误的任何想法吗?

最佳答案

我遇到了相同的错误,并且只有在您拥有属性标题时才会发生。如果我第一次点击搜索栏,结果也是一样的。
这是一个对我有用的解决方法:

- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView
{
     if(self.refreshControl!=nil)
     {
          [self.refreshControl beginRefreshing];
          [self.refreshControl endRefreshing];
     }
     return scrollView.scrollsToTop;
}

09-10 00:36
查看更多