0

我正在使用这些方法来定义 navigationItem rightBarButtonItems:

UIImageView * imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"YouTube-icon"]];
UIBarButtonItem *barIcon = [[UIBarButtonItem alloc]initWithCustomView:imageView];

if ([videoArr count] > 0) {
    self.navigationItem.rightBarButtonItems = [NSArray arrayWithObjects:barIcon,self.aToZButton, nil];
} else {
    self.navigationItem.rightBarButtonItem = barIcon;
}

[imageView release];
[barIcon release];

当调试开启时:

self.navigationItem.rightBarButtonItems = [NSArray arrayWithObjects:barIcon,self.aToZButton, nil];

应用程序崩溃:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFType isSystemItem]: unrecognized selector sent to instance 0x1e5eecd0'

编辑

我注意到只有当我使用 rightBarButtonItem 和 rightBarButtonItem 时才会发生崩溃。如果我只使用 rightBarButtonItems 它不会崩溃

4

1 回答 1

1

似乎您过早地释放对象(内存管理问题)。NSCFType是 iOS SDK 中的一个内部未记录的类,它背后的事实意味着你的类的内存空间在进程完成之前被释放。

于 2013-08-27T08:14:37.813 回答