私はobjective-cを初めて使用しています。現在、iOS Appで作業しています。 私は、カスタムUIViewオブジェクトの中にある、SettingsButtonを呼び出すButtonを持っています。 このボタンを押すと、FileOwner "ViewController.m"のTouch Up Insideハンドラが呼び出されます。これは後でNavControllerのViewControllerを押します。 しかし、アプリケーションはSIGABRTまたはEXC_BAD_ACCESSでクラッシュします。 AppDelegate.mにNavigationControllerのコードを挿入しているので、これが発生しています アイデアはありますか?NavigationControllerでButtonを押したときにiOSアプリケーションがクラッシュする
AppDelegate.m:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
UIViewController *vc;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
vc = [[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil];
} else {
vc = [[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil];
}
UINavigationController* navController =
[[UINavigationController alloc] initWithRootViewController:vc];
navController.navigationBarHidden = true;
[self.window addSubview:navController.view];
[self.window makeKeyAndVisible];
return YES;
}
ViewController.m:
- (IBAction)SettingsPressed:(id)sender {
NSLog(@"SettingsPressed!");
}
明確にする:私の意図はSettingsButtonを押すとバックを持つ場合にのみ表示を変更することです戻るボタン。しかし、アプリケーションは既に空のEventhandlerでクラッシュします。
にErrorMessage SIGABRTが発生した場合:もちろん
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString SettingsPressed:]: unrecognized selector sent to instance 0x7a06fc0'
クラッシュする行を置くことはできますか? –
発生したエラーメッセージをコンソールから追加しました。あなたが望んでいたことを願っています。 – Marv
さて、近づくと、あなたはSettingsPressedを呼び出す部分のコードを見ることができます –