«Загрузить больше» в UITableView - PullRequest
0 голосов
/ 10 декабря 2010

Я загружаю RSS-канал в виде таблицы.Я собираюсь загрузить 10 записей, а затем хотел бы сказать «Загрузить еще» в последней ячейке или где-то ниже последней ячейки, поэтому, когда пользователь нажимает «Загрузить еще», загружается остальная часть RSS-канала.Поскольку RSS приходит с моего веб-сайта, я могу запрограммировать его на получение 10 или всех записей на стороне сервера (используя строку запроса или что-то в этом роде).

Вопрос в том, как сделать таблицу такой, чтобыпоследняя ячейка имеет ссылку «Загрузить еще», по которой можно щелкнуть, чтобы вызвать метод для загрузки остальной части канала (а затем, когда весь канал загружен, больше нет ссылки «Загрузить еще»).

Ответы [ 2 ]

2 голосов
/ 13 декабря 2010
0 голосов
/ 10 декабря 2010

Из-за способа работы UITableView (то есть: они запрашивают ячейки / содержимое ячейки по мере необходимости), каково значение в ссылке «загрузить больше»?(Тем более, что вам, вероятно, все равно придется загружать RSS-канал целиком.)

Другими словами, не должно ли быть достаточно действия пользователя, прокручивающего представление таблицы?

Это также потенциально немного сбивает с толку с точки зрения пользовательского интерфейса - будет ли иметь "нагрузку больше" в нижней части загружать старые или новые сообщения?Где будут появляться эти сообщения?Вверху вид или внизу?(Я предполагаю, что вы упорядочиваете ячейки в порядке «самый последний первый», поскольку это, вероятно, имеет смысл, если вы потребляете фид.)

Обновление

Однако, если вы действительно хотите сделать это, я бы предложил сначала сделать так, чтобы ваш источник данных только сообщал UITableView, что он имеет "n" +1 элементов, а +1 - это ячейка, которая содержит ваш«загрузить больше» текста.(Вы можете отформатировать ячейку, чтобы она выглядела по-разному, используя метод backgroundView и т. Д. На UITableViewCell , который вы предоставляете.)

Когда пользователь выберет эту последнюю ячейку, вам нужно будет захватить этукак обычно, определите, является ли это поддельной ячейкой «загрузить больше», и, если это так, скажите источнику данных, что он должен раскрыть все свое содержимое в UITableView.Тогда вы можете просто заставить представление таблицы перезагрузить себя (через метод reloadData), и все должно быть хорошо.

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