数组控制器可以在按下“add”之前接收输入吗?

时间:2013-09-19 21:34:46

标签: cocoa nsmutablearray

在Cococa,

我可以将输入字段(比如textField)链接到我的数组控制器,以便添加一个新对象,其中已经填充了属性吗?

由于

1 个答案:

答案 0 :(得分:0)

尝试以下代码,因为它是针对一个文本字段完成的: - 头文件

#import <Cocoa/Cocoa.h>

@interface testWindowController : NSWindowController
{
    IBOutlet NSArrayController *arrayController;
    NSMutableArray *array;
}
@property(readwrite,retain)NSMutableArray *array;
@end

实施文件: -

#import "testWindowController.h"

@interface testWindowController ()

@end

@implementation testWindowController
@synthesize array;
- (id)initWithWindow:(NSWindow *)window
{
    self = [super initWithWindow:window];
    if (self) {
        // Initialization code here.
    }

    return self;
}

- (void)windowDidLoad
{
    NSString *str=@"testValue";
    self.array=[[NSMutableArray alloc]init];
    NSMutableDictionary *dict=[NSMutableDictionary dictionary];
    [dict setObject:str forKey:@"valueText"];
    [self.array addObject:dict];
    [self setArray:self.array];
    [super windowDidLoad];

    // Implement this method to handle any initialization after your window controller's window has been loaded from its nib file.
}
-(NSString *)windowNibName
{
    return @"testWindowController";
}
@end

XIB文件: - 请按照以下步骤操作: -

1)在此文件中,取一个arraycontroller和textfield,然后将arraycontroller连接到FileOwner。 2)然后在Binding Inspector中将arraycontroller绑定到FileOwners并将模型键路径提到数组。 3)现在将您的textfield绑定到arraycontroller并将模型键路径绑定为“key:”,其名称为valueText。