我有一個故事板的應用程序。我從故事板中的視圖控制器A開始。這個VC A有幾個視圖/子視圖。運行時,用戶可以從最初加載的位置修改/調整大小/移動這些子視圖。它工作正常。iOS7故事板模態segue更改子視圖
然後,用戶選擇並在故事板中選擇導致模態延續的動作,以查看控制器B.這會正常加載VC B.但是,我可以看到,就像模態轉換對B生成動畫一樣,VC A中由用戶修改的子視圖也會丟失......它們會恢復到最初加載的位置。然後,當VC B最終被解散,並且segue退回到VC A時,視圖保留在原始位置 - 這意味着用戶沒有得到與他之前具有的子視圖相同的安排。這是不好的連續性,不好的經驗。
這是怎麼回事?我怎樣才能通過模態繼續保持這些子視圖?我已經嘗試了幾個步驟,包括保存子視圖的框架(在viewWillDisappear中)並恢復它們(在viewWillAppear中),但它不起作用......這些子視圖不會在新位置重新繪製。我假設這些viewWill/viewDid實現與視圖移動不兼容。
奇數,我也有一個集合視圖,其內容在轉換過程中不會丟失......似乎只是這些子視圖位置/框架。
固定!謝謝。我沒有想到它是自動佈局,因爲我無論如何都去掉了所有的約束條件。我唯一需要做的其他改變是我必須用[[UIScreen mainScreen] bounds] .size.height替換我的self.view.window.frame.size.height的使用,以獲得我的一些屏幕位置數學...無論如何,這可能更準確。 –