0
如果我嘗試將操作發送給自定義對象,我會得到一個EXC_BAD_ACCESS。我使用UIStoryboard進行測試,使用和不使用ARC。真奇怪。該對象似乎被正確實例化。 - (id)init被調用, - (void)awakeFromNib也是。在test-xib中,我添加了一個對象並將其與自定義類連接起來。我可以連接IBOutlets,沒有任何問題。只有行動崩潰。有任何想法嗎?向自定義對象發送操作會導致應用程序在ios5.1中崩潰,xcode 4.3.1
SimpleObj.m
#import <UIKit/UIKit.h>
@interface SimpleObj : NSObject
-(IBAction)simpleTest:(id)sender;
@end
SimpleObj.h
#import "SimpleObj.h"
@implementation SimpleObj
-(IBAction)simpleTest:(id)sender{
NSLog(@"Test");
}
@end
使用NSZombieEnabled進行測試告訴我,自定義對象已經釋放。所以自定義對象被實例化並且立即被釋放......保持這個自定義對象的唯一方法是通過在文件所有者中引用它? – fragglechen 2012-03-18 15:03:24
正如你已經發現你自己,問題在於對象的初始化和使用,而不是IBAction代碼。你也許應該發佈相關的代碼來回答這個問題。 – Mundi 2012-03-18 15:33:38
@fragglechen,對,局部變量將被釋放或泄漏,並且引用將是無效的。 – 2012-03-18 16:07:23