2013-04-16 90 views
-1

我有一個關於如何在Xcode中使用Storyboard的問題。 我有一個3視圖的應用程序,我會加載他們與動畫模態「交叉溶解」。使用故事板Segges

每次我加載一個新的視圖而不關閉當前的視圖時,它仍佔用內存? 我意識到,改變多個視圖後,我的APP變慢了。

如果是,如何按順序改變視圖的正確方法?

enter image description here

+0

「順序改變視圖」是什麼意思?同樣在上面的這個工作流程中,你不會「回到1」,你實際上正在創建一個新的ViewController。 – Firo

+0

@Firo是的,這是重點。我認爲我創造了很多NewControllers,並且通過創建多個模塊而造成了內存損失。更改序列中的視圖:第一視圖 - >第二視圖 - >第三視圖 - >第一視圖(但使用「交叉融合」動畫。) –

回答

0

不是指定的「回1」賽格瑞在故事板相反,你可能需要使用該方法-initWithIdentifier:source:destination:實例它的代碼。這將允許您將目標指定爲您的第一個視圖控制器,而不是創建要轉換到的新視圖控制器。

事實上,如果您不想用每個開關實例化新副本,您應該可以通過編程方式指定這些視圖控制器之間的所有節點。

1

當你從3回到1時,你應該使用unwind segue。這會導致3和2被解除分配(如果你沒有保留一個強指針),你將返回到1的同一個實例(而不是創建一個新實例)。一般來說,你不應該使用除了放鬆繼續之外的繼續。