iOS 10.0 UIRefreshControl未显示指示符

dog*_*tar 18 uitableview ios uirefreshcontrol ios10 ios9.3.2

我正在使用一个UITableView,它具有一个下拉刷新功能,但当我调用[self.refreshControl beginRefreshing]时,下拉刷新的微调器没有出现

上面的代码在viewDidLoad中调用,因为表最初正在加载一些数据.如果我在初始刷新后执行下拉刷新,则微调器工作正常.标题显示但不是旋转器.

似乎无法解决这个问题.它适用于iOS 9.3.2,但不适用于iOS 10.

这是我目前使用的代码.

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self setupView];
    [self customSetup];
    self.refreshControl = [[UIRefreshControl alloc] init];
    self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Updating Discounts..."];
    [self.refreshControl addTarget:self action:@selector(reloadDeals) forControlEvents:UIControlEventValueChanged];
    [self.refreshControl beginRefreshing];
    [self.tableView setContentOffset:CGPointMake(0, -self.refreshControl.frame.size.height) animated:YES];
}
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助

小智 23

在代码之前:

[refreshControl beginRefresh]

插入代码:

[refreshControl layoutIfNeeded]

  • 这对我来说在 iOS 11 上不起作用。其他答案也没有:( (3认同)