Какао: как сделать так, чтобы текстовое поле отправляло действие (из того, что пользователь ввел в него), не нажимая ввод - PullRequest
0 голосов
/ 28 октября 2011

У меня есть простое приложение какао с редактируемым текстовым полем text1 вверху, где пользователь может вводить текст, а также нередактируемое текстовое поле / текст text2 метки внизу, которое предназначено для отображения именно того, что напечатано в text1.

Моя проблема в том, что я могу заставить text2 обновляться только тогда, когда пользователь нажимает ввод после ввода текста text1. Можно ли каким-либо образом автоматически обновлять текст2 без нажатия пользователем клавиши ввода в текст1?

Ответы [ 2 ]

1 голос
/ 28 октября 2011

Звучит как работа для Привязки какао . Вы могли бы:

  1. Объявите свойство NSString в вашем классе модели (который в простых случаях может быть делегатом вашего приложения);
  2. Привязать text1 к этому строковому свойству, выбрав «Постоянно обновляет значение»;
  3. Привязать text2 к этому строковому свойству.

Единственный шаг, требующий кода, - это шаг 1. Шаги 2 и 3 можно напрямую настроить в файле пера.

1 голос
/ 28 октября 2011

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

...