调用beginRefreshing
时,我无法看到加载微调器
[self.refreshControl beginRefreshing];
我的UITableViewController子类使用UIRefreshControl
// refresh
UIRefreshControl * refreshControl = [UIRefreshControl new];
[refreshControl addTarget:self action:@selector(refreshTableView) forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;
它与用户交互完美配合(当用户放下桌子时),然后可以看到微调器。
但是当我在viewDidLoad上调用beginRefreshing
时,我看不到微调器(只有当我向下拖动表时)。
注意:
self.refreshControl reference is right
在beginRefreshing之后不会立即调用reloadData或endRefreshing,但是有很长的时间延迟(通过网络加载数据),所以我没有取消beginRefreshing。
编辑:
仅当contentOffset
的{{1}}属性为0且我调用tableView
时才会发生这种情况。错误? Feauture吗
答案 0 :(得分:28)
对我来说这看起来像个错误,因为它只发生在contentOffset
的{{1}}属性为tableView
我用以下代码修改了它(UITableViewController的方法):
0
答案 1 :(得分:3)
你的修复看起来不错,但我不认为这是一个错误。
手动调用beginRefreshing方法时,
当没有可用的行/单元格时,刷新控制自动出现是有意义的。 但是当有一些单元可用时,当我们调用手动开始刷新时(我们根据计时器定期刷新的情况)那么它不应该动画/更改内容偏移,因为如果他看到/正在阅读内容,它会分散用户的注意力一些可见细胞。