2010-01-05 48 views
1

我正在將背景顏色從單個視圖控制器更改爲所有其他視圖控制器。 但它只在我開始使用單個控制器時才起作用。 如果我開始與任何其他控制器,然後我沒有得到該控制器的背景更改。
我雖然這樣做,因爲如果我開始與其他控制器,其init方法被調用,並且改變,我從單個控制器調用後去其他控制器不會出現其他控制器。如何每次重新啓動視圖控制器

那麼我們如何重新啓動另一個控制器,以便其他控制器中也可以顯示更改。

+0

在你的init方法,你通過直接設置視圖對象的backgroundColor屬性改變顏色? – Anurag 2010-01-05 12:12:01

+0

我這樣做,其中color1是全球性的,我從單個控制器在此控制器中更改 - (void)viewDidUnload { \t //發佈主視圖的任何保留子視圖。 \t //例如self.myOutlet = nil; \t UIColor * color1 = color2; \t self.view.backgroundColor = color1; \t } – uttam 2010-01-05 12:29:56

回答

3

您不應該重新初始化已經初始化的對象。

我認爲你應該考慮使用viewWillAppear方法,當視圖變爲活動狀態時調用它。

- (void)viewWillAppear:(BOOL)animated 

退房蘋果的文檔 here

+0

感謝它的工作背景顏色 – uttam 2010-01-05 12:42:35

相關問題