Ho una vista tabella che visualizza i messaggi che prelevo dalla rete.TableView scorre al centro quando viene inserita una nuova riga
Quando arriva un nuovo messaggio, deve essere aggiunto a tableview in basso.
Quando arriva un nuovo messaggio, viene aggiunto correttamente nella parte inferiore della vista tabella, ma la vista tabella scorre immediatamente al centro. (Quindi se avessi detto 100 celle lì ora, la cella 50 sarebbe nel mezzo della vista di scorrimento ora).
La cosa strana è che ciò accade solo se il punto di scorrimento prima dell'inserto si trova nella metà inferiore della tabella.
Quindi, se guardo la cella 10 di 99, e aggiungo una riga, essa viene aggiunta in fondo bene.
Ma, se guardo la cella 75 di 99 e aggiungo una riga, la posizione di scorrimento salta nuovamente al centro (~ cella 50).
Ecco il mio codice per l'aggiunta di un nuovo messaggio alla Tableview:
[self.tableView beginUpdates];
[self.messages addObject:message];
NSArray *indexPaths = @[[NSIndexPath indexPathForRow:(self.messages.count - 1) inSection:0]];
[self.tableView insertRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationFade];
[self.tableView endUpdates];
Perché tableView Scorrimento automatico in questo modo?
Non si vuole far scorrere la vostra Tableview ?? –
@hussainShabbir Scorre senza alcuna interazione dell'utente. Quando aggiungo una nuova riga, non voglio che scorra automaticamente al centro, cosa che sta facendo ora. – Jeff
@Jeff Hai avuto fortuna con la risoluzione di questo? Ho lo stesso problema. Usare le celle auto dimensionanti e sta saltando come un matto. –