Se UIRefreshControl viene avviato a livello di codice, (beginRefreshing e endRefreshing) quando non è visibile, si verificherà uno sfarfallio continuo nell'animazione UIRefreshControl al prossimo aggiornamento manuale.Sfarfallio UIRefreshControl in iOS7
Aggiungi questo metodo in UITableViewController sottoclasse e fare un tiro per rinfrescarsi dopo 2 secondi e vedrete il guizzo
-(void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
UIRefreshControl * refreshControl = [[UIRefreshControl alloc] init];
self.refreshControl = refreshControl;
[self.refreshControl beginRefreshing];
double delayInSeconds = 2.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW,
(int64_t)(delayInSeconds * NSEC_PER_SEC));
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
[self.refreshControl endRefreshing];
});
}
Come evitare questo sfarfallio?
Presumo che sia un bug. Ho sperimentato lo stesso comportamento qualche giorno fa –
Guarda l'app di posta (almeno su iPad), aggiorna anche i flicker di controllo se avvii l'aggiornamento e poi tiri di nuovo. –