В моем окне есть объект NSTextField, который должен быть отключен при нажатии флажка.
Я написал IBAction для получения флажка, установил флажок и отключил / включил текстовое поле, основанное на состоянии флажка.
[mName setEnabled: [mNameCheck state]];
Это прекрасно работает с основными функциями, но я обнаружил странное поведение.
Вы обновляете некоторые детали в текстовом поле и устанавливаете флажок, чтобы текстовое поле получало отключенный старый контент.
Пример:
- Этап 1: текстовое поле содержит содержимое
"Название"
- Этап 2: обновление текстового поля
содержание как "Гириш"
- Этап 3: установите флажок (чтобы отключить
текст подан)
- Этап 4: текстовое поле отключается с помощью
содержание как "Имя"
Проблема будет решена, если я оставлю ответчик и установлю ответчик на какой-либо другой контроллер, прежде чем текстовое поле будет отключено.
В моем случае я не могу присвоить респонденту флажок (он не принимает) или любой другой контроллер, поэтому я сделал что-то вроде ниже, который работает нормально
[mName resignFirstResponder];
[mName becomeFirstResponder];
подать в отставку и назначить ответчик с тем же контроллером.
Мне просто интересно, правильное ли это решение или какое-либо лучшее решение этой проблемы?