iPhone UITextField внутри TableCell отключается - PullRequest
2 голосов
/ 07 августа 2009

В моем приложении для iPhone есть страница настроек, где пользователь может вводить текст в несколько текстовых полей. Текстовые поля - это все ячейки в таблице. Проблема, которую я замечаю, состоит в том, что, когда поле прокручивается за пределы экрана телефона, оно теряет значение, находящееся в данный момент в текстовом поле.

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

У меня есть событие, связанное с тем, когда пользователь нажимает кнопку «Далее / Готово» на клавиатуре (didFinishEditingField :), чтобы обновить значение в контроллере таблицы, но если они этого не нажимают и просто нажимают внутри другого поля это не срабатывает.

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

Редактировать: Для пояснения причина, по которой я пошел с UITextFields внутри таблицы и ячеек вместо всех в одном представлении, заключается в том, что я хотел, чтобы она выглядела как типичная страница настроек с обрезанным фоном и группы входов.

Ответы [ 3 ]

2 голосов
/ 07 августа 2009

Проблема в том, что вы неправильно используете ячейки, чтобы дать всем ячейкам текстового поля уникальные идентификаторы многократного использования. Проверьте мой ответ здесь http://stackoverflow.com/questions/1180490/iphone-custom-uitableviewcell-with-image-after-scroll/1180817#1180817

1 голос
/ 01 ноября 2009

У меня была такая же проблема, и я не снимала клетки. Уникальная идентификация клеток подтверждена для работы.

1 голос
/ 07 августа 2009

Вы повторно используете клетки? Кроме того, для создания начальной ячейки вы используете dequeueReusableCellWithIdentifier:? Я пробовал нечто подобное, и оказалось, что повторное использование ячеек, а затем добавление к ним редактируемых полей дает неожиданные результаты.

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