У меня очень простая программа какао. Одно окно, внутри которого находится NSTextView. В этой конфигурации NSTextView работает точно так, как вы ожидали. Я могу напечатать, отменить, повторить, все.Подклассификация NSTextView делает невозможным в Cocoa
Но тогда я подкласс NSTextView, назовем его TextView. Этот новый класс не отменяет никаких методов, это в основном пустой подкласс. Я заменяю NSTextView своим новым подклассом. Я могу печатать текст в TextView, но отмена не работает. Он просто подает звуковой сигнал. Пункт меню отмены отменяется. Я бы не ожидал, что это произойдет, поскольку TextView не добавляет никакого нового кода в структуру наследования объектов.
Что я должен сделать, чтобы мой TextView снова включил отмену?
XIB object hierarchy, "Text View" is my "TextView" class
Edit: при дальнейшем наблюдении, там действительно был прав в своем подклассе, который вызвал этот вопрос, так как полагал, Мохамад Farhand.
Точно, как вы «заменить NSTextView с моим новым подклассом этого»? Удалили ли вы объект и добавили новый или вы просто изменили класс текстового вида в инспекторе идентификации? –
Я изменил имя класса в инспекторе идентификации –
Я просто попробовал это, и он работает для меня. Когда вы заменили текстовое представление, уверены ли вы, что вы не заменили прокрутки? Я не понимаю, почему это не сработало для вас. Возможно, у вас есть версия этого нерабочего кода на GitHub. – rein