我的一个选项卡上有以下内容:
- (void)viewDidLoad
{
[super viewDidLoad];
self.clearsSelectionOnViewWillAppear = YES;
UIRefreshControl* refreshControl = [[UIRefreshControl alloc] init];
refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"Sync"];
[refreshControl addTarget:self
action:@selector(refresh:)
forControlEvents:UIControlEventValueChanged];
self.refreshControl = refreshControl;
//### Workaround: http://stackoverflow.com/a/19126113/1971013
dispatch_async(dispatch_get_main_queue(), ^
{
[self.refreshControl beginRefreshing];
[self.refreshControl endRefreshing];
});
}
- (void)refresh:(id)sender
{
if ([Settings sharedSettings].haveAccount == YES)
{
[[DataManager sharedManager] synchronizeWithServer:^(NSError* error)
{
[sender endRefreshing];
}];
}
else
{
[sender endRefreshing];
}
}
下拉表时,刷新控件开始正常旋转。
但是,当我在旋转时短暂显示另一个选项卡然后返回时,刷新控件停止旋转。
知道为什么吗?
尝试将这段代码从viewDidLoad
to viewWillAppear
:
//### Workaround: http://stackoverflow.com/a/19126113/1971013
dispatch_async(dispatch_get_main_queue(), ^
{
[self.refreshControl beginRefreshing];
[self.refreshControl endRefreshing];
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)