iphone - Xcode 警告 : "NSArray may not respond to -addObject"

标签 iphone objective-c cocoa cocoa-touch nsarray

在我的头文件中,我有这段代码:

@interface TableViewController : UIViewController 
{
    IBOutlet UITableView *tblListData;
    NSArray *arryData;
}

在我的类声明文件中,我有这样的实现:

- (void)viewDidLoad 
{
    arryData = [[NSArray alloc] initWithObjects:@"iPhone",@"iPod",@"MacBook",nil];
    [super viewDidLoad];
}

现在我收到此 Xcode 警告:NSArray 可能不会响应以下代码的 -addObject:

- (IBAction)AddButtonAction:(id)sender
{
    [arryData addObject:@"Mac Mini"];
    [tblListData reloadData];
}

果然,我的 NSArray 没有响应 addObject! :(

我该怎么办?

最佳答案

如果你查阅文档,你会看到 NSArray实际上是一个不可变数组(即它不能被修改)。这就是 -addObject: 消息未实现的原因。相反,您需要使用 NSMutableArray .

关于iphone - Xcode 警告 : "NSArray may not respond to -addObject",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2090275/

相关文章:

ios - 更改不同范围的字体时 NSMutableAttributedString 崩溃

cocoa - 如何禁用 NSScrollView 的水平滚动?

iphone - Xcode 中省略参数的高级本地化

iphone - 强制 CLLocationManager 更新 - 它有帮助还是有害?

iPhone 应用程序可像 USB 存储一样使用。

objective-c - 缩放预览: use NSTextView, NSTextField、CATextLayer 或drawInRect?

objective-c - 没有任何 GUI 的 Cocoa 应用程序?

iphone - iPhone录制视频时如何设置帧率?

objective-c - iOS 7 自定义 UILabel 字体,超出标签边缘的文本

ios - UIScrollView 中的 UIControll 未接收到触摸事件