【发布时间】:2012-02-18 23:48:50
【问题描述】:
我需要帮助弄清楚如何将 NSArray 的内容显示到 NSTableView 中。我的 NSArray 充满了(或者至少我认为是)来自目录的文件名。我使用 NSFileManager 获取目录中文件的名称,然后将该信息加载到 NSArray 中。但我不知道如何将 NSArray 加载到 NSTableView 中。
AppDelegate.h
#import <Cocoa/Cocoa.h>
@interface AppDelegate : NSObject <NSApplicationDelegate> {
IBOutlet NSTableView *tableView;
NSArray *list;
IBOutlet NSTextField *text;
NSFileManager *manager;
NSString *path;
NSString *pathFinal;
}
@property (assign) IBOutlet NSWindow *window;
- (IBAction)listArray:(id)sender;
@end
AppDelegate.m
#import "AppDelegate.h"
@implementation AppDelegate
@synthesize window = _window;
- (int)numberOfRowsInTableView:(NSTableView *)tableView
{
return [list count];
}
- (id)tableView:(NSTableView *)tableView
objectValueForTableColumn:(NSTableColumn *)tableColumn
row:(int)row
{
return [list objectAtIndex:row];
}
- (IBAction)listArray:(id)sender {
path = @"~/Library/Application Support/minecraft/bin/";
pathFinal = [path stringByExpandingTildeInPath];
list = [manager directoryContentsAtPath:pathFinal];
[tableView reloadData];
}
- (void)dealloc
{
[super dealloc];
}
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
}
@end
【问题讨论】:
标签: cocoa nsarray nstableview