Проблемы с NSTextView, где работал NSTextField - PullRequest
0 голосов
/ 27 января 2011

Я только начинаю с obj-c, я пытаюсь создать импортер для извлечения пары чисел из фрагмента отформатированного текста. Я начал с обёртывания TextField и смог как получить текст в строку, так и найти его, как хотел с

NSString *varImport = [NSString stringWithString:[importTextView stringValue]];

Когда я переключаюсь на TextView в Интерфейсном Разработчике, я получаю там ошибку

-[NSScrollView string]: unrecognized selector sent to instance 0x100429160

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

В ходе моего исследования я натолкнулся на два разных сайта, на которых говорилось, что TextView не может напрямую подавать строку, но по странным причинам IE TextView сохранял данные в виде таблицы MutableString, которая постоянно обновлялась, и для доступа к ней вам нужно было скопировать оригинал (Второй пример) В любом случае я обращаюсь к экспертам, потому что я явно что-то делаю не так и не могу понять ответы в Интернете.

NSString *varImport = [NSString stringWithString:[[import textStorage] string]];

NSString *varImport = [[import string] copy];

Не беспокойтесь о других вещах, если у вас нет времени, чтобы объяснить, что происходит в веб-примерах, я в основном хочу узнать о материале ScrollView и о том, как извлечь из него строку, чтобы возможность поиска.

Заранее спасибо!

Graham

Ответы [ 2 ]

1 голос
/ 27 января 2011

Просто потому, что вы используете неправильный метод.

NSString *varImport = [NSString stringWithFormat:[importTextView string];

Кроме того, вы могли подключить переменную экземпляра importTextView к неправильному соединению.NSTextView всегда находится в NSScrollView.Просто щелкните правой кнопкой мыши ваш объект в конструкторе интерфейса и перетащите экземпляры в верхнюю часть текстового представления (где должно отображаться «NSTextView»).Сохраните перо и попробуйте запустить его снова.Это должно работать.

0 голосов
/ 27 января 2011

Чтобы получить текстовое значение из текстового поля или текстового представления, вы должны использовать метод - (NSString *)string.

...