TextField intoFirstResponder Проблема для действия клавиши табуляции (клавиатуры) - PullRequest
10 голосов
/ 06 марта 2012

У меня есть представление в XIB, где я использовал несколько текстовых полей. Допустим, первое текстовое поле становится первым респондентом, как только представление загружается в окно. Если я нажимаю клавишу табуляции на клавиатуре моей машины, чтобы перейти к следующему текстовому полю, кроме непосредственного текстового поля, все остальные текстовые поля также становятся первыми респондентами, и текстовое поле начинает редактирование. Метод делегата вызывается для всех текстовых полей. В чем может быть проблема ? Это произойдет не только в симуляторе, когда мы используем клавиатуру машины, но и когда мы используем клавиатуру Bluetooth для устройства iOS.

1 Ответ

2 голосов
/ 10 октября 2012

Нажатие клавиши табуляции => переход к следующему текстовому полю относительно иерархии текстовых полей в представлении.

Когда вы нажимаете tab - текстовые поля должны вызываться столько раз, сколько текстовых полей, то есть 5 текстовых полей => нажатие одной клавиши табуляции, все 5 экземпляров будут вызваны. Когда вы нажимаете tab - textfielddidbeginediting будет вызываться только один раз относительно экземпляра нового текстового поля. Следовательно, лучше использовать любую логику для текстового поля в методе делегата textfielddidbeginediting.

Это характеристики по умолчанию для методов делегата, а не проблема.

...