Я новичок. Я взял код для таблицы, созданной Джеем Верслуисом 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