私のユーザーの1人が、自分のデバイスであるiPhone3GSのクラッシュを報告しています。同じタイプの他のデバイスは、同様の動作を報告していません。彼は私にクラッシュログを送ってくれました、そしてそれを読んだことに基づいて、私はどのように進めるかわかりません。クラッシュログを誤って解釈していないことを願っていますが、アクションがまだ呼び出されていないようです。
これが私がUIBarButtonItemを作成して設定する方法です:
- (void)viewDidLoad {
[super viewDidLoad];
UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addLog:)];
self.navigationItem.rightBarButtonItem = addButton;
[addButton release];
}
これが私の行動方法です:
- (IBAction)addLog:(id)sender {
MyViewController *myController = [[MyViewController alloc] initWithNibName:@"MyNib" bundle:nil];
UINavigationController *subNavigationController = [[UINavigationController alloc] initWithRootViewController: myController];
[self presentModalViewController:subNavigationController animated:YES];
[myController release];
[subNavigationController release];
}
これはクラッシュログです:
例外タイプ:EXC_CRASH(SIGABRT) 例外コード:0x00000000、0x00000000クラッシュしたスレッド:0 スレッド0がクラッシュしました: 0 libSystem.B.dylib 0x0007e98c __kill + 81 libSystem.B.dylib 0x0007e97c kill + 4 2libSystem.B.dylib0x0007e96eレイズ+10 3libSystem.B.dylib0x0009361aアボート+34 4 MyApp 0x000042e8 0x1000 + 13032 5 CoreFoundation 0x00058ede-[NSObject PerformSelector:withObject:withObject:] + 18 6 UIKit 0x0004205e-[UIApplication sendAction:to:from:forEvent:] + 78 7 UIKit 0x00094d4e-[UIBarButtonItem(Internal)_sendAction:withEvent:] + 86 8 CoreFoundation 0x00058ede-[NSObject PerformSelector:withObject:withObject:] + 18 9 UIKit 0x0004205e-[UIApplication sendAction:to:from:forEvent:] + 78 10 UIKit 0x00041ffe-[UIApplication sendAction:toTarget:fromSender:forEvent:] + 26 11 UIKit 0x00041fd0-[UIControl sendAction:to:forEvent:] + 32 12 UIKit 0x00041d2a-[UIControl(Internal)_sendActionsForEvents:withEvent:] + 350 13 UIKit 0x0004263e-[UIControl touchesEnded:withEvent:] + 330 14 UIKit 0x00041656-[UIWindow _sendTouchesForEvent:] + 318 15 UIKit 0x00041032-[UIWindow sendEvent:] + 74