Pet*_*isu 11 uitableview ios6 uirefreshcontrol
调用时我无法看到加载微调器 beginRefreshing
[self.refreshControl beginRefreshing];
Run Code Online (Sandbox Code Playgroud)
我的UITableViewController子类使用UIRefreshControl
// refresh
UIRefreshControl * refreshControl = [UIRefreshControl new];
[refreshControl addTarget:self action:@selector(refreshTableView) forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;
Run Code Online (Sandbox Code Playgroud)
它与用户交互完美配合(当用户将表放下时),然后可以看到微调器.
但是当我调用beginRefreshing
viewDidLoad时,我没有看到微调器(只有当我向下拖动表时).
笔记:
self.refreshControl引用是对的
在beginRefreshing之后不会立即调用reloadData或endRefreshing,但是有很长的时间延迟(通过网络加载数据),所以我没有取消beginRefreshing.
编辑:
这只发生在0和i调用的contentOffset
属性时.错误?Feauture?tableView
[self.refreshControl beginRefreshing]
Pet*_*isu 29
它看起来像我的错误,因为它只occures时contentOffset
的财产tableView
是0
我用以下代码修复了它(UITableViewController的方法):
- (void)beginRefreshingTableView {
[self.refreshControl beginRefreshing];
if (self.tableView.contentOffset.y == 0) {
[UIView animateWithDuration:0.25 delay:0 options:UIViewAnimationOptionBeginFromCurrentState animations:^(void){
self.tableView.contentOffset = CGPointMake(0, -self.refreshControl.frame.size.height);
} completion:^(BOOL finished){
}];
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13141 次 |
最近记录: |