Обновить UITableView, глядя на представление? - PullRequest
0 голосов
/ 06 декабря 2011

В настоящее время я создаю UITableView, который читает массив и отображает его в TableView.Я постоянно добавляю к массиву, я хотел бы иметь кнопку в представлении, которое после щелчка обновляет UITableView.

Как мне выполнить перезагрузку UITableView из нового массива, который я только что построил?

Ответы [ 2 ]

3 голосов
/ 06 декабря 2011

Если вы добавляете и удаляете элементы по одному за раз, вы, вероятно, захотите реализовать методы вставки и удаления в виде анимированных табличных представлений.

Когда вы добавляете или удаляете элемент из табличного представления, вы будете готовиться, вызывая [tableView beginUpdates], внесите изменения в свой массив и затем вызовите [tableView endUpdates]

Между начальным и конечным вызовами обновления вы будете выполнять фактическое удаление / вставку.

Для удаления следует использовать

[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationBottom];

Обратите внимание UITableViewRowAnimationBottom вы можете поиграть с этим, чтобы получить лучшую анимацию в зависимости от положения элемента. Также iOS5 имеет значение enum что-то вроде UITableViewRowAnimationAutomatic и будет использовать лучший вариант.

Для вставки вы должны использовать

insertRowsAtIndexPaths:withRowAnimation: так же, как я показываю выше с удалением.

Для получения дополнительной информации ознакомьтесь с разделом, в котором эти методы перечислены в справочнике по классу UITableView

1 голос
/ 06 декабря 2011

Функция, которую вы ищете: [self.tableView reloadData];.Вот ссылка на документацию Apple для UITableView .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...