添加对象现有阵列

时间:2012-03-26 23:31:32

标签: objective-c ios cocoa-touch nsmutablearray

我的app委托中有一个用户数组,在其中一个屏幕中,我正在尝试创建一个要添加到该数组的对象。用户属性只是电子邮件和密码。在屏幕上,我有两个文本字段和一个按钮。我想要它,以便按下按钮时,它会根据输入到字段中的内容生成一个新用户,并将其放入应用程序委托中的用户数组中。

抱歉学习堆栈溢出接口atm。我正在使用以下代码:

-(IBAction)addPerson:(id)sender:(ContactViewController *)controller 
{
    Person *newPerson = [Person personWithEmail:controller.usernameTextField.text password:controller.passwordTextField.text]; 
    [self.(Truck_Tracker_AppAppDelegate *)UIApplication.sharedApplication.delegate).listPeople addObject:newPerson];
}

我认为我已经成功创建了Person对象newPerson,我只是无法将其发送给应用代表。

3 个答案:

答案 0 :(得分:0)

当你想要使用NSMutableArray时,听起来就像你只使用标准的NSArray。

查看相关文档:

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSMutableArray_Class/Reference/Reference.html

NSMutableArray *myArray = [[NSMutableArray alloc] init];
[myArray addObject:@"some data"];

答案 1 :(得分:0)

如果它是一个数组,那么它可以是NSArrayNSMutableArray

第一个是 immutable ,你不能将元素添加到现有的NSArray,你可以创建一个带有添加元素的新元素。

在第一种情况下,你应该做类似于

的事情
self.array = [array arrayByAddingObject:newUser];

如果是NSMutableArray,那么您可以通过

轻松添加项目
[self.array addObject:newUser];

答案 2 :(得分:0)

Apple Developer Site上的此示例:

http://developer.apple.com/library/mac/#samplecode/NSTableViewBinding/Introduction/Intro.html

几乎完全按照你的描述。修改它应该很容易做到你想要的。