2016-07-02 95 views
1

我似乎無法找到針對此問題的解決方案。我發現的所有展開順序都是通過故事板實現的。無法使用Swift展開故事板

我想學習如何在代碼中使我的佈局純粹。所以在我的新Xcode項目中,我正在刪除故事板文件。

我想在我的視圖控制器上做一個放鬆的細節,讓用戶登錄到我的應用程序的主屏幕。當用戶成功登錄時,視圖應該放鬆。

任何人都可以在正確的方向指出我如何使用唯一的代碼來實現這種效果嗎?

+3

看到下半部分的回答(前半部分是segues,下半部分沒有segues)http://stackoverflow.com/a/33716102/1630618 – vacawama

+0

嘿謝謝,這個工作,但有一個額外的線。我的呈現視圖控制器是一個導航控制器,而不是它的根視圖控制器,在我的情況下是我想回到並在dismissViewController方法完成之前更改其值。我做了destinationVC = navController.viewControllers [0]讓它起作用 – iOShepherd

+2

聽起來不錯。您可能還想要谷歌代表團。被調用的VC不需要知道調用者的任何信息(比如它的類)。通過定義調用者實現的協議來實現這一點。在您推送被叫方之前,您在被叫方中設置了對主叫方的引用。該引用是一個與協議類型相關的弱指針。您可以調用委託指針上的協議方法來傳回數據。 – vacawama

回答

3

如果沒有作爲故事板項目的賽段,則不能進行任何「賽格」操作。

如果要過渡到視圖導航堆棧上的第一個視圖,您可以使用self.navigationController?.popToRootViewControllerAnimated(true)

如果你只是想轉到另一個視圖控制器,你可以使用

presentViewController