2014-03-03 138 views
2

我正在構建/學習我的第一個Xcode應用程序。我之前使用過C,並試圖學習Objective C來構建iPhone應用程序。應用程序按下按鈕時崩潰; iOS Sim

我已經構建了一個簡單的應用程序,當我運行iOS模擬器並按下一個指向故事板中另一個屏幕的按鈕時,該應用程序崩潰。到目前爲止,我已經使用故事板構建了整個應用程序。

這是我整個main.m文件...

#import <UIKit/UIKit.h> 

#import "AppDelegate.h" 

int main(int argc, char * argv[]) 
{ 
    @autoreleasepool { 
     return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 
    } 
} 

這是錯誤...

2014年3月2日21:22:04.422膳食安排發電機組[4777 :70b] *因未捕獲的異常'NSGenericException'而終止 應用程序,原因:'推 只有當源控制器由UINavigationController的一個 實例管理時才能使用segues。 *第一擲調用堆棧:(0的CoreFoundation 0x00000001018a2795 exceptionPreprocess + 165 1 libobjc.A.dylib
0x00000001015ee991 objc_exception_throw + 43 2的UIKit
0x00000001006ef051 - [UIStoryboardPushSegue destinationContainmentContext] + 0 3的UIKit
0x0000000100252096 - [UIApplication的sendAction ::從:forEvent:] + 80 4的UIKit 0x0000000100252044 - [UIApplication的sendAction:toTarget:fromSender:forEvent:] + 17 5的UIKit 0x0000000100326450 - [UIControl _sendActionsForEvents:withEvent:方法] + 203 6的UIKit 0x00000001003259c0 - [UIControl touchesEnded :withEvent:] + 530 7
UIKit的0x0000000100286c15 - [一個UIWindow _sendTouchesForEvent:] + 701 8的UIKit 0x0000000100287633 - [一個UIWindow的SendEvent:] + 988 9的UIKit
0x0000000100260fa2 - [UIApplication的的SendEvent:] + 211 10的UIKit
0x000000010024ed7f _UIApplicationHandleEventQueue + 9549 11 的CoreFoundation 0x0000000101831ec1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION
+ 17 12的CoreFoundation 0x0000000101831792 __CFRunLoopDoSources0 + 242 13的CoreFoundation 0x000000010184d61f __CFRunLoopRun + 767 14的CoreFoundation
0x000000010184cf33 CFRunLoopRunSpecific + 467個15 GraphicsServices
0x00000001039923a0 GSEventRunModal + 161 16的UIKit
0x0000000100251043 UIApplicationMain + 1010 17膳食計劃生成
0x0000000100001193主+ 115 18 libdyld.dylib
0x0000000101f1a5fd啓動+ 1)的libC++ abi.dylib:與類型NSException的 未捕獲的異常終止(lldb)

+1

請參閱http://www.raywenderlich.com/10209/my-app-crashed-now-what-part-1 – rmaddy

+1

而當您發佈這樣的問題時,您必須始終包含完整的錯誤消息。 – rmaddy

+0

對不起。我將包含錯誤消息。它位於哪裏?另外,@rmaddy我會閱讀!看起來像一個優質的文章! –

回答

0

確保您的IBAction方法正確連接到.h或.m文件。您可能已經設置了操作並刪除了該方法,這會導致該類無法響應選擇器。

+0

對不起,我不太明白!但我會看! –

+0

@jfrankum既然你已經發布了錯誤,你可以忽略這個答案。它與你的問題無關。 – rmaddy

+0

但是,謝謝你! @rmaddy –

0

您應該將nextviewcontroller添加到控制器層次結構中。

1

錯誤表示您嘗試使用推送選項,但您的視圖控制器沒有導航控制器。在你的故事板中點擊你想要從編輯器部分的頂部菜單中選擇嵌入的第一個視圖,然後選擇導航控制器。該錯誤將消失。確保您的標識符也在segue的故事板中設置。或者選擇segue並將其更改爲modal,然後嘗試並將該應用程序編譯。

+0

更改爲「模態」,工作!謝謝! –

0

在Storyboard中選擇包含按鈕的視圖控制器,並選擇'Editor'菜單並選擇'Embed In'並選擇'Navigation Controller'。

相關問題