我正在創建一個基本的基於導航的應用程序,並看到一個exc_bad_access錯誤。有人可以指出我有什麼問題嗎?我剛剛2個屏幕,這裏是我使用的代碼:在AppDelegate.mios ios5 exc_bad_access與導航控制器(基本)
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UINavigationController *navcon = [[UINavigationController alloc]init];
psLaunchVC* pvc = [[psLaunchVC alloc]init];
[navcon pushViewController:pvc animated:NO];
[self.window addSubview:navcon.view];
[self.window makeKeyAndVisible];
return YES;
}
psLaunchVC出現細如第一屏
。 我想從psLaunchVC啓動psTipVC。
psLaunchVC具有如
-(IBAction)showTip:(id)sender;
在.H聲明的操作和在.M實施爲
- (IBAction) showTip:(id)sender
{
// psTipVC *pst = [[psTipVC alloc]init];
psTipVC *pst = [[psTipVC alloc]initWithNibName:@"psTipVC" bundle:nil];
[self.navigationController pushViewController:pst animated:YES];
}
的showTip被連接在IB作爲touchUpInside動作。但是,執行此代碼時,我看到exc_bad_access錯誤。有人能幫助我嗎?是self.navigationController訪問導航控制器的正確方法?
聲明以供參考:
@interface psLaunchVC : UIViewController
@interface psTipVC : UIViewController
實際的錯誤消息:
2011-12-29 00:03:13.739 passport[633:707] -[__NSCFString showTip:]:
unrecognized selector sent to instance 0x18f5e0
2011-12-29 00:03:13.748 passport[633:707]
*** Terminating app due to uncaught exception
'NSInvalidArgumentException',
reason: '-[__NSCFString showTip:]:
unrecognized selector sent to instance 0x18f5e0'
看起來您的錯誤與您從IB連接到showTip方法的錯誤有關,如錯誤消息'[__NCCFString showTip:]:無法識別的選擇器發送...'所示。所以我認爲這與您的導航控制器參考沒有任何關係。 – 2011-12-29 05:34:46
我在工具中清楚地看到,我已建立連接..我同意它可能沒有任何關係,請參閱..但不知道還有什麼可能導致此 – Kiran 2011-12-29 06:01:39