道歉,如果這有點不清楚 - 當談到iOS編程時,我是noob。這裏是場景:ios:根據在前一個視圖中使用的segue,不同的segue到另一個視圖
我有一個LogInView,一個CategoryView,一個CheckerView,一個WalkthroughView和一個LandingPageView。
用戶開始在LogInView,並根據應用的藍牙狀態,以及用戶是否已被註冊,要麼去:
- CheckerView(註冊,藍牙關閉)
- LandingPageView(註冊,藍牙開)
- 類別查看(未註冊)
如果用戶點擊類別查看,這取決於他的藍牙連接的狀態,他去eithe R(這一部分,到目前爲止,工作好):
- WalkthroughView(藍牙)
- CheckerView(藍牙關閉)
美中不足的是,類別查看將總是經過WalkthroughView,不管藍牙是否打開。所以,這裏就是我的故事板的樣子:
右熱的一塌糊塗,我知道了。由於兩個LogInView和類別查看可以在某些時候,進入CheckerView,我需要一種方法來檢查該塞格斯的使用,使得:
- CheckerView總會進入LandingView如果以前的觀點是LogInView,和
- 如果以前的視圖是CategoryView,它將始終進入WalkthroughView。
我隱約意識到prepareForSegue
功能的,但我不知道又如何使用它,也沒有把它放在哪裏(從以前的頁面或接收頁面上?)
有什麼建議麼?謝謝。
您是否閱讀過UIViewController類參考中prepareForSegue的文檔?你看過關於使用segues的任何教程嗎?您可以使用prepareForSegue輕鬆地在Checker View上設置一個布爾值,如果它來自登錄視圖。 – Paulw11
另一個想法是測試註冊/未註冊,並基於該結果,使用'performSegueWithIdentifier'來確定您將使用哪個segue。然後測試藍牙啓用/禁用。在'prepareForSegue'中,你將設置你需要在下一個VC上設置的內容。 http://stackoverflow.com/questions/7864371/how-to-pass-prepareforsegue-an-object – Adrian