ios - UITableView beginUpdate/endUpdate haciendo que se desplace hacia arriba
uitextview (2)
Esto también me self.tableView.estimatedRowHeight
, y parece que el problema es self.tableView.estimatedRowHeight
. Cuando hice la estimación lo suficientemente grande, el problema dejó de suceder.
Agregué esto en su lugar y está funcionando bien hasta ahora:
- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath {
return UITableViewAutomaticDimension;
}
He estado tratando de entender este problema tan común de un UITextView
en expansión dentro de un UITableViewCell
de un UITableView
y estoy casi allí excepto por una pequeña cosa.
Tengo un UITableView
que tiene un UITableViewCell
personalizado. Mi UITableView
utiliza la nueva altura de celda dinámica de auto-dimensionamiento de self.tableView.estimatedRowHeight
con la ayuda de self.tableView.estimatedRowHeight
y self.tableView.rowHeight = UITableViewAutomaticDimension;
, que aumenta la altura de la celda según el diseño automático de ContentView.
Puedo aumentar correctamente el marco de mi UITableView
y la altura de la celda de mi UITableView
sí crece, pero cada vez que llamo self.tableView beginUpdates
y los endUpdates
correspondientes, toda mi vista de desplazamiento de tableView hace que se desplace hacia la parte superior de la tabla ver. Tengo un método que se desplaza a la posición del cursor, pero como puede imaginar, cada vez que se crea una nueva línea en el UITextView, el UITableView se desplaza a la parte superior y luego a la posición del cursor y es un janky.
¿Alguien tiene alguna idea? Puedo proporcionar un video si es necesario. Saludos, Mike
No puedo comentar sobre la respuesta de akiraspeirs , pero al establecer self.tableView.estimatedRowHeight
en la altura exacta de mi celda antes de que ocurra el cambio de tamaño, se self.tableView.estimatedRowHeight
el problema del desplazamiento extraño. Su segunda solución no funcionó en mi caso.