2013-08-02 9 views
1

Я использую NSSplitview, верхняя половина которой - NSTableView, а нижняя - NSTabview с двумя элементами. Каждый NStabViewItem имеет NSTextview. Все они определены в файле nib.NSTextView внутри NSTabviewItem, погрузка текстовой задержки

Теперь, когда вы выбираете строку NSTableview, я загружаю содержимое файла и устанавливаю его в NSTextview для NSTabViewItem. поэтому элементы NSTabview загружаются в зависимости от того, какие строки NSTableView выбраны.

Однако я наблюдаю заметную задержку в 5-6 секунд, чтобы увидеть текст, видимый в NSTextview NSTabViewItem из NSTabView. Но если я наведите указатель мыши в области NSTabView, содержимое NSTextview NSTabViewItem из NSTabview будет показано немедленно. Может ли кто-нибудь узнать, в чем проблема?

Я использую только делегат NSTableView, делегат не tabview. Я просто загружаю контент в соответствующий NSTextView каждого NSTabViewItem из tabview.

Код сниппета:

- (void)tableViewSelectionDidChange:(NSNotification *)notification 
    { 
     if ([mTableView selectedRow] != -1) 
     { 
      selectedNode = [mLogContainer objectAtIndex:[mTableView selectedRow]]; 
      [self manageTabView:[selectedNode logfile]]; 

     } 
    } 

-(void) manageTabView:(NSString*) fname 
{ 
    [self loadTextView:mDetailView withFilePath:fname]; 
    NSString* summaryFile = [NSString stringWithFormat:@"%@.summary",fname]; 
    [self loadTextView:mSummaryView withFilePath:summaryFile]; 
    [mTabView selectTabViewItemAtIndex:0]; 

} 


-(void) setContent:(NSString*) content forView:(NSTextView*) textView 
{ 
    NSString* fileContent = [[NSString alloc] init];  
    [fileContent stringWithContentsOfFile:content 
      encoding:NSUTF8StringEncoding error:nil]; 
    NSTextStorage *textStorage = [textView textStorage]; 
    [textStorage beginEditing]; 
    [[textStorage mutableString] setString:fileContent]; 
    [textStorage endEditing]; 
    [textView setNeedsDisplay:YES]; 
} 

ответ

0

Сколько когда-либо глупо это ни звучало, но проблема этого странного поведения было то, что NStextview в бобах кадре был немного больше, чем NSTabviewItem зрения. Не уверен, в чем причина такого поведения, но когда я изменил размер NSTextView .. Все работает нормально.