风景中的UIRefreshControl

can*_*boy 14 iphone objective-c ios uirefreshcontrol

我的桌子顶部有一个UIRefreshControl.

屏幕是横向的.

麻烦的是,我无法向下拉足以触发刷新,因为Landscape中的空间太小.有没有办法调整你必须下拉的金额?

Ana*_*and 12

请记住,您的tableview只是UIScrollView的子类.在你的控制器中,实现scrollViewDidScroll方法并调用-beginRefreshing你的UIRefreshControl,如下所示.

但是UIRefreshControl的动画在进入刷新状态时不会像你期望的那样顺畅.但它的确有效.

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    if (scrollView.contentOffset.y < -98 && ![self.refresher isRefreshing]) {
        [self.refresher beginRefreshing];
        //do all the work
        [self.refresher endRefreshing];
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,最好将它放在ScrollViewDidEndDragging中: (4认同)

Dav*_*ong 10

你可以调整你需要拉多远的方法是改变它的高度UITableView. UIRefreshControl根据tableView的高度调整其最大失真高度.如果您无法更改tableView的高度,那么请提交有关您的情况详细信息的错误,并希望在未来的iOS版本中解决.

还有,你试过更快下拉吗?

  • 调整tableview的高度似乎完全没有效果. (3认同)