Нужно ли создавать контроллер для UITextField? - PullRequest
0 голосов
/ 05 января 2012

Просто начинайте с приложения для iPhone, используя xcode 4.2.

Я понимаю, что хорошей практикой является использование подкласса UIViewController для каждого представления в моем приложении, и я могу написать некоторый базовый код для проверки кнопок и т. Д. В связанном представлении.

Теперь я хочу выполнить какое-то действие с текстовым полем в одном из этих представлений, скажем, я буду использовать событие Value Changed для записи содержимого текстового поля при каждом нажатии клавиши.

Должен ли я создавать какой-то подкласс контроллера UITextField? Или я имею дело с подобными вещами в существующем подклассе ViewController, который содержит текстовое поле?

Если последнее, как мне обратиться к текстовому полю в подклассе контроллера представления и выполнить подключения?

Ответы [ 2 ]

1 голос
/ 05 января 2012

Возможно, вы захотите, чтобы ваш UIViewController реализовал UITextFieldDelegate .Соединения могут быть сделаны через Интерфейсный Разработчик и розетки или просто устанавливая делегата в текстовом поле и используя ссылку, которую вы получаете от обратных вызовов делегата.

0 голосов
/ 05 января 2012

Вы бы использовали существующий подкласс ViewController, который содержит текстовое поле. Хорошее эмпирическое правило - один ViewController на экран просмотра (не включая UINavigationController, модальные экраны, uisplitviewcontroller и всплывающие окна).

Чтобы сослаться на него, вы должны создать свойство в .h вашего пользовательского UIViewController:

@property (nonatomic,weak) IBOutlet UITextField * myTextField;

Обратите внимание на ключевое слово IBOutlet. Это позволит вам подключить его в InterfaceBuilder (или вашей раскадровке). Чтобы узнать, как подключиться, я бы порекомендовал вам посмотреть видео о IBOutlets, так как оно более наглядно.

...