2015-05-09 4 views
0

Я создаю приложение типа списка ToDo, и я хотел бы поместить редактируемый флажок в каждую ячейку в UITableView. Я хочу, чтобы пользователь мог отмечать элемент как завершенный, установив флажок в таблицеView. Они также должны иметь возможность подключаться к ячейке, за пределами флажка, и переходить к подробному представлению.Установите флажок в UITableViewCell - Swift

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

Я попытался нарисовать сенсорный жест распознавания на изображении, но он не сработал. Всякий раз, когда изображение на ячейке прослушивается, оно просто переходит к подробному представлению. Затем я нашел статью где-то, где говорится, чтобы создать UIView, вложенный внутри ячейки, и связать Touch Gesture с этим. Поэтому я попробовал это, но теперь он работает только с перерывами. Иногда он правильно распознает касание, а иногда просто переходит к подробному представлению.

Я видел эту идею в приложении Wunderlist.

Как это осуществить правильно?

ответ

0

У iOS нет встроенного элемента управления флажком. Вместо этого Apple использует UISwitch.

Если вы хотите следовать HIG от Apple, используйте переключатель.

Если вы хотите вместо этого использовать флажок, у вас есть несколько вариантов.

Вы можете прикрепить распознаватель жестов к изображению и сделать это таким образом.

Вы можете создать собственный подкласс UIButton (MyCheckbox).

Вы можете найти сторонний класс флажка, который еще кто-то создал. Я бы посмотрел на Cocoa Controls. Быстрый поиск показывает полдюжины различных опций флажка.

Важной вещью является размер «хит-бокса», который пользователь удаляет. Обычно вы хотите создать изображение/представление размером не менее 30x30 точек, а 40x40 пунктов лучше. Легкий способ сделать это - создать ваши проверенные и непроверенные изображения с достаточным количеством пробелов вокруг них, чтобы сделать их 30x30 или 40x40 точек.

Я предполагаю, что ваш образ слишком мал, поэтому вы сообщаете, что он работает только с перерывами.

Смежные вопросы