Почему controlTextDidChange (_ obj: Notification) не работает для метки? [MacOS] - PullRequest
0 голосов
/ 19 июня 2019

Почему controlTextDidChange (_ obj: Notification) не работает для метки? Я хочу, чтобы функция вызывалась при изменении значения строки значения метки [macOS]

1 Ответ

2 голосов
/ 19 июня 2019

controlTextDidChangecontrolTextDidBeginEditing и controlTextDidEndEditing) - методы делегата, которые сообщают инициированные пользователем изменения в редактируемом текстовом поле.Метка не является редактируемой, и поэтому никогда не будет отправлять эти сообщения.

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

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

...