2015-05-12 4 views
-3

Этот метод найден в AppDelagate, загружает текстовый файл по моему выбору и разбивает контекст текстового файла на массив.Отображение текста в текстовом представлении от NSArray

У меня возникли проблемы с отображением содержимого массива в моем NSScrollview * под названием self.textView.

Я не уверен, как обновить текстовое представление с каждым членом массива.

- (IBAction)loadButton:(id)sender {   
    NSOpenPanel *panel = [NSOpenPanel openPanel]; 
    if ([panel runModal] == NSFileHandlingPanelOKButton) { 
     NSURL *bookUrl = [panel URL]; 
     NSString *contents = [NSString stringWithContentsOfURL: bookUrl encoding: NSASCIIStringEncoding error: NULL]; 
     NSArray *loadedBook = [contents componentsSeparatedByString:@"#NP#"]; 
     self.textView.value = loadedBook[0];    
    } 
} 
+1

Я понятия не имею, что 'textView.value 'свойство есть. Разве это не 'textView.text'? –

+0

textView.text не является свойством, которое я могу назначить. Значение было единственным, что, по моему мнению, могло быть близко к тому, что мне нужно. – Harvey1066

+0

Является ли googling «NSTextView как изменить текст»? Это был первый результат: http://stackoverflow.com/questions/14646163/change-the-text-of-a-nstextview-programmatically –

ответ

1

Правильный метод setString:, который объявлен в NSText.

ваш код должен быть:

- (IBAction)loadButton:(id)sender {   
    NSOpenPanel *panel = [NSOpenPanel openPanel]; 
    if ([panel runModal] == NSFileHandlingPanelOKButton) { 
     NSURL *bookUrl = [panel URL]; 
     NSString *contents = [NSString stringWithContentsOfURL: bookUrl encoding: NSASCIIStringEncoding error: NULL]; 
     NSArray *loadedBooks = [contents componentsSeparatedByString:@"#NP#"]; 
     [self.textView setString:bookStr]; 
    } 
} 

UPDATE

Посмотрите at this question, чтобы увидеть, как добавить текст к NSScrollView

Смежные вопросы