2012-02-21 44 views
0

我有必要在執行segue之前設置一些參數,所以我必須使用CUSTOM SEGUE,對吧? 在這種情況下,我會進行從屏幕到另一個的過渡動畫,但我沒有NavigationController(並且我不想插入一個!)如何在Storyboard w/o NavigationController中執行動畫自定義細分?

是否有可能不使用NavigationController並改變自定義segue的意見?

或者,可以設置一個按鈕的動作並執行某些代碼行以執行一個循環? 我發現此解決方案:

  • (IBAction爲)showDetailView:(ID)發送方{

    //代碼

    .....

    [自performSegueWithIdentifier:@「ShowDetail 「sender:sender」;

}

但它需要navigtion控制器...

感謝所有和對不起我的壞簡體!

回答

0

當你在Storyboard中創建你的segue時,選擇「modal」而不是「push」(自定義指的是我認爲你不需要的第三種類型)。選擇segue並使用屬性檢查器爲其命名。在我的代碼示例中,我使用名稱「editTitleBlock」。

設置目標視圖控制器性能(這將是模態視圖控制器)把prepareForSegueMethod在你的第一個視圖控制器是這樣的:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
if ([[segue identifier] isEqualToString:@"editTitleBlock"]) { 
     [[segue destinationViewController] setTitleFieldString: @""]; 
     [[segue destinationViewController] setAltitudeFieldString:currentLocation.localizedAltitudeString]; 
     [[segue destinationViewController] setLocationFieldString:currentLocation.localizedCoordinateString]; 
     [[segue destinationViewController] setAuthorString:userName]; 

    if ([[segue identifier] isEqualToString:@"cancel"]) { 
     // do nothing special 
    } 
} 

,回到第一個視圖控制器使用:

[self dismissModalViewController animated:YES]; 
+0

非常感謝你tj !!!!它完美的作品! 因爲這個問題2天以來我一直在敲我的頭...... – 2012-02-21 23:59:36

+0

你能幫我一個接受答案嗎? – 2012-02-22 00:10:51

+0

對不起,我不是該網站的實踐:) – 2012-02-23 09:42:15

相關問題