Я пытаюсь создать таблеточный просмотр, где каждая строка может отображать подсписку, когда она используется. Для того, чтобы я обновить DataModel и позвонитьUITableView с самостоятельной калибровкой insertRowsAtIndexPaths изменяет contentOffset
[self.tableView insertRowsAtIndexPaths:addedIndexPaths withRowAnimation:(UITableViewRowAnimationTop)];
анимация происходит в то время как строки видны. Добавленные ячейки отображаются правильно после анимации, но в то время как анимация tableview иногда прокручивается вверх. Это происходит особенно в последнем разделе таблицы. Также tableview всегда прокручивается, когда таблица отображается до тех пор, пока не будет видна верхняя часть ячейки, которая находится над вставленными ячейками.
Я хочу исправить контент-контент во время видимой анимации. Я попытался установить смещение контекста внутри begin updates
и end updates
, но это не сработало, потому что анимация будет прокручиваться вверх, и вы увидите, что содержимое прокручивается назад.
Я использую автомасштабирование, чтобы сделать ячейки саморазмерными.
Как сохранить смещение содержимого константы tableview при вставке видимых ячеек?
Вы задаете вид таблицы, чтобы перейти к верхней части добавленной ячейки при указании UITableViewRowAnimationTop. Если вы не хотите, чтобы это произошло, вам нужно выбрать новую анимацию строк. Вероятно, вы хотите UITableViewRowAnimationNone. Все ваши параметры описаны здесь https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableView_Class/#//apple_ref/c/tdef/UITableViewRowAnimation. – Dare
Я не уверен, но: Возможно, вы используете autoLayout, но вы не отправляете сообщения autoLayout, чтобы настроить себя после каждой анимации. Если это то, что вы делаете неправильно, посмотрите это видео. Надеюсь, поможет. https://www.youtube.com/watch?v=N5Ert6LTruY – Honey
@ asma22 Я использую автомасштабирование для размеров своих ячеек. я попробовал и назвал self.tableview layoutIfNeeded внутри блока начальных/конечных обновлений, но это не решило проблему. Как бы вы узнали автоматическую компоновку? – HasenBaumeister