UITableView: перемещение строки в пустую секцию

голоса
4

У меня есть UITableViewс некоторыми пустыми секциями. Я хотел бы , чтобы пользователь смог переместить строку в них используются стандартные элементы управления из режима редактирования. Единственный способ , которым я могу сделать это до сих пор иметь фиктивную строку в моих «пустых» участках и пытается скрыть его с помощью tableView:heightForRowAtIndexPath:дать манекен Row высоту нуля. Это , как представляется , чтобы оставить его в качестве 1-строки пикселей в. Я , вероятно , можно скрыть это, делая особый тип клеток , который просто наполненной [UIColor groupTableViewBackgroundColor], но есть лучший способ?

Это все в групповом режиме UITableView.

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

Задан 17/03/2009 в 17:07
источник пользователем
На других языках...                            


3 ответов

голоса
1

Я обнаружил, что в прошивкой 4.3, фиктивная строка должна иметь высоту по меньшей мере, 1 пиксель, чтобы дать желаемый эффект, позволяющий ряд, чтобы быть перемещен в эту секцию.

Я также обнаружил, что фиктивная строка необходима только в первом и последнем разделе; все разделы между ними не имеют эту проблему.

И, похоже, в прошивкой 5.0, не фиктивные строки или специальные приемы не нужны.

Ответил 20/12/2011 в 02:22
источник пользователем

голоса
0

Я обнаружил, что если вы возвращаетесь -1.0 от метода heightForRowAtIndexPath он удалит 1 пиксель линию.

Ответил 08/01/2011 в 13:16
источник пользователем

голоса
0

При управлении редактированием, вы можете контролировать , если представление таблицы в режиме редактирования. Используйте этот флаг внутри cellForRowAtIndexPathрешить погоду или не отображать «пустую» строку. В то время как в режиме «регулярном», строка не будет отображаться, но когда «редактировать» cellForRowAtIndexPath кранов пользователя должно вызываться снова и на этот раз решил отобразить строку. Подробности о том , как сделать это зависит от источника данных и как вы приклеивания его к дисплею. Если вы снова не получаете вызов, вы можете вручную вводить строки с insertRowsAtIndexPaths/ deleteRowsAtIndexPathsи / или вызовом reloadDataдля принудительного обновления.

Ответил 17/03/2009 в 17:24
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more