NSTextField в NSOutlineView не отправляет свое действие - PullRequest
0 голосов
/ 14 октября 2019

У меня есть основанная на представлении NSOutlineView, которую я использую в качестве боковой панели.

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

Сначала я даже не мог сфокусировать текстовое поле, но обнаружил, что мне нужно разбить на подклассы контурное представление и вернуть true для validateProposedFirstResponder

Я не могу выполнить какое-либо действие изтекстовое поле. Вот что я попробовал

  • IBAction. Никогда не вызывается.
  • Установка контроллера представления в качестве делегата для текстового поля. Никогда не звонил.
  • Установка непосредственных выводов текстового представления action и target напрямую (target = self, action = селектор и функция objc). Никогда не звонил.

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

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

Я также заметил, что при нажатии Enter в текстовом поле он сразу теряет фокус. Это было не поведение вне рамочного представления.

1 Ответ

0 голосов
/ 15 октября 2019

Мне пришлось добавить созданный экземпляр контроллера представления к представителю контроллера представления. Недостаточно просто представить представление созданного экземпляра контроллера вида в виде структуры.

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