これは簡単なことであれば私の質問には意味があるので、私はそれを罠に掛けてしまいました。私は窓には2つのビュー追加していEXC_BAD_ACCESSを引き起こすボタン
:
self.appView = [[AppViewController alloc] initWithNibName:nil bundle:nil] ;
self.buttonBar = [[ButtonBar alloc] initWithNibName:nil bundle:nil];
[window insertSubview:[self.appView view] belowSubview:[self.launchScreen view]];
[window insertSubview:[self.buttonBar view] belowSubview:[self.launchScreen view]];
私はself.launchScreenを削除する前に。
要素をappView(uitableviewcontroller)に追加すると、期待どおりに機能しますが、buttonBar(XIBまたはコードのいずれか)にボタンを追加すると、EXC_BAD_ACCESSがクリックされます。
が、ここでは(1つのボタンを追加している)のButtonBarから初期化コードです:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.settingsButton = [[UIButton alloc] initWithFrame:CGRectMake(0,10,40,28)];
[self.settingsButton addTarget:self action:@selector(settings:) forControlEvents:UIControlEventTouchUpInside];
UIImage *btnImage = [UIImage imageNamed:@"play.png"];
[self.settingsButton setImage:btnImage forState:UIControlStateNormal];
[btnImage release];
[self.view addSubview:self.settingsButton];
}
return self;
}
私の質問は与えるもの二つの部分、1)です!私はこの方法が長すぎる、2)どのように私はこのものをデバッグできますか? XCODEのデバッグツールがこの問題を追跡するのに役立つと確信したら、n00bの質問をするためにSOに来るのは嫌いです...
「設定:」メソッドは同じオブジェクトに存在しますか? – Joe
はい、それを読み取ります: - (void)settings {NSLog(@ "Settings"); } –
代わりに「@セレクタ(設定)」を試してください。 – Joe