Прежде всего я должен сделать это без IB и без передовых методов Objective-C, таких как KVO.
Моя проблема связана с тем простым фактом, что я не могу найти способ получить полностью новое строковое значение текстового поля.
Я пробовал использовать функцию делегата:
- (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString
но это не дает мне только строку замены, а не полную строку, которая мне нужна для проверки. Я могу позже использовать текст
Я нашел
- (void)textDidChange:(NSNotification *)aNotification
- (void)controlTextDidChange:(NSNotification *)aNotification
но когда я получаю эти звонки, уже слишком поздно, и последнее содержимое текстового поля уже пропало. Так каков наилучший способ справиться с этим?
И да, я прочитал связывание NSTextField с NSNumber , но это не дает мне понятия, как решить мою проблему.
Все, что мне нужно, это простая функция тестирования "- (BOOL) acceptNewValue (NSString string)". Почему все так сложно с какао, оно начинает ощущаться как MFC.