NSArray имен файлов не будет загружаться в NSTableView - PullRequest
0 голосов
/ 28 мая 2019

Я новичок. Я взял код для таблицы, созданной Джеем Верслуисом 4/05/2014. Первоначально он имел 2 столбца и заполняет таблицу из 2 массивов. Оно работает. Я изменил таблицу на 1 столбец и у меня есть массив для чтения имен файлов из каталога. Массив отлично читает имена, но в моей таблице ничего не появляется. Любая помощь будет оценена.

// ——————— Interface —————————
#import <Foundation/Foundation.h>

@interface TableController : NSObject <NSTableViewDataSource, NSTableViewDelegate>

@property (nonatomic, strong) NSArray *recipes;
@property NSFileManager *filemgr;
@property NSArray *filelist;

@end

// ———————— Implementation ———————————
#import "TableController.h"

@implementation TableController
static NSString* currentpath = @"/Users/rasweeny/Documents/Current_Recipes";
NSInteger count;

#pragma mark - Custom Initialisers
- (NSArray *)recipes {
    _filemgr = [NSFileManager defaultManager];
    _filelist = [_filemgr contentsOfDirectoryAtPath: currentpath error: nil];
    count = [_filelist count];    
    for (int i = 0; i < count; i++)
        NSLog (@"%@", [_filelist objectAtIndex: i]);

    return _recipes;
}

#pragma mark - Table View Data Source
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView {
    // how many rows do we have here?
    return self.recipes.count;
}

- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {   
    // populate each row of our table view with data
    return [self.recipes objectAtIndex:row];
}

#pragma mark - Table View Delegate
- (void)tableViewSelectionDidChange:(NSNotification *)notification {   
    NSTableView *tableView = notification.object;
    NSLog(@"User has selected row %ld", (long)tableView.selectedRow);
}

@end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...