Ho un UITableView cui origine dati e delegato vengono commutati tra un paio di oggetti di origine dati personalizzati quando l'utente tocca un controllo segmentato (si pensi "Inizio pagina Pagato "vs" Top Free "nell'app store dell'app).Forza programmaticamente un UIScrollView per interrompere lo scorrimento, per condividere una vista tabella con più origini dati
Ogni oggetto origine dei dati consente di risparmiare il suo contenuto ultimo rotolo di offset, e lo riporta quando diventa l'origine dati attiva per la vista tavolo facendo:
tableView.contentOffset = CGPointMake(0, savedScrollPosition);
Questo funziona bene quando l'utente passa l'origine dati quando la tabella è a riposo, ma se l'utente preme il controllo segmentato mentre la tabella è ancora in movimento (cioè in decelerazione), la vista tabella continua a decelerare dal vecchio offset, ignorando in modo efficace il mio incarico contentOffset.
C'è un modo per forzare la visualizzazione tabella a interrompere lo scorrimento/decelerazione quando imposto il contentOffset o un altro modo per rendere funzionante questo tipo di visualizzazione tabella di origine dati commutabile?
scrollRectToVisible lo ha fatto, utilizzando la posizione di scorrimento salvata come origine del rect e utilizzando i limiti della vista tabella come altezza. Sei assolutamente corretto che i metodi scroll * controllino l'accelerazione nei modi in cui l'offset del contenuto non lo consente. –
'scrollRectToVisible' ha funzionato anche per me. – zekel