2013-01-03 13 views
0

這對我來說很奇怪。昨天我認爲我在iPhone4 ios6設備上有一次一次崩潰。今天我試着在模擬器中運行我的應用程序,當我調用pushViewController時,它可靠地崩潰。這是崩潰它的代碼。pushViewController:animated:正在崩潰,沒有有用的輸出

PFObject *selectedGame = [self.myTurnList objectAtIndex: index]; 
    [self.myTurnList removeObjectAtIndex:index]; 
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil]; 
    GuessWordController *guessWord = [storyboard instantiateViewControllerWithIdentifier:@"GuessWordController"]; 
    guessWord.game = selectedGame; 
    //[self performSegueWithIdentifier:@"toGuessWord" sender:self]; 
    [self.navigationController pushViewController:guessWord animated:NO]; 
    return; 

我已經把一堆NSLog的在那裏,一切似乎一直到返回聲明的一切。但是,我得到'EXC_BAD_ACCESS'拋出並沒有輸出到調試器。我在我的GuessWordController的viewDidLoad中也有NSLog,並且沒有一個顯示出來。

我已經嘗試改變pushViewController來做一個segue,我設置了故事板,而似乎工作。但我想用pushViewController來做,因爲我不想動畫。

是否有任何原因,我有這樣的設置會導致應用程序崩潰,特別是ios5.1?

+0

您是否已將故事板的控制器ID設置爲故事板中的「GuessWordController」?或者你只是參考了課堂? –

+0

您使用ARC嗎? –

+0

我想你正在發送一個已發佈的對象。嘗試開啓殭屍。 http://stackoverflow.com/questions/2190227/how-do-i-set-up-nszombieenabled-in-xcode-4 – nielsbot

回答

0

爲什麼不使用segue並創建一個沒有動畫的自定義segue?

這比你想要做的要容易得多。

從這裏的文件...

http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/CreatingCustomSegues/CreatingCustomSegues.html#//apple_ref/doc/uid/TP40007457-CH16-SW1

您可以使用此功能...

- (void)perform 
{ 
// Add your own animation code here. 

    [[self sourceViewController] presentModalViewController:[self destinationViewController] animated:NO]; 
} 

然後刪除所有的東西你有,只是使用[self performSegueWithIdentifier:@"toGuessWord" sender:self];代替。

然後在prepareForSegue你需要...

GuessWordController *controller = segue.destinationViewController; 

controller.game = selectedGame; 

這應該工作。

+0

試圖創建一個自定義的segue,並且我有類似的問題。 - (void)執行{[[sourceViewController] navigationController] pushViewController:[self destinationViewController] animated:NO]; } 我是否需要包含其他內容? –

+0

請參閱編輯...添加功能 – Fogmeister

+0

這正是我所做的,除非我想要進行推送,因爲我需要保持Nav控制器周圍的狀態,並且希望能夠彈回到先前的視圖。所以我做了pushViewController而不是presentModalViewController。但顯然pushViewController是我的所有問題的來源.. –