У меня есть UIRefreshControl, и он отлично работает, когда вы его используете, но он зависает, он никогда не исчезает. Я попыталсяUIRefreshControl неопределенно
[self.refreshControl endRefreshing];
Это решение было от подобного question, но это не касалось моей.
Даже при этом refreshControl продолжает вращаться, а не отклоняться. Почему это?
В моей viewDidLoad:
[NSThread detachNewThreadSelector:@selector(refreshFeed) toTarget:self withObject:nil];
refreshControl = [[UIRefreshControl alloc] init];
[refreshControl addTarget:self
action:@selector(refreshFeed)
forControlEvents:UIControlEventValueChanged];
[self.tableView addSubview:refreshControl];
метод refreshFeed ...
-(void)refreshFeed
//load those feeds
{
RSSLoader* rss = [[RSSLoader alloc] init];
[rss fetchRssWithURL:feedURL
complete:^(NSString *title, NSArray *results) {
dispatch_queue_t downloadQueue = dispatch_queue_create("downloader",NULL);
dispatch_async(downloadQueue, ^{
_objects = results;
//completed fetching the RSS
dispatch_async(dispatch_get_main_queue(), ^{
[self.refreshControl endRefreshing];
[self.tableView reloadData];
});
});
}];
}
работает ли tableView reloadData? если нет, запустите его в основном потоке – mashdup
reloadData работает ... Если я помещу этот метод в другое место, ячейки не загрузятся. – Morkrom