2010-01-17 237 views

回答

1

這是一個壞主意,因爲它會創建視圖控制器之間的不必要的依賴。

如果您仍想這樣做,只需將第一個視圖控制器的參考與開關傳遞到第二個視圖控制器。然後,在您的第二個視圖控制器中訪問相應的UISwitch的on屬性。

但是,我強烈建議您創建一個自定義類來保存每個UISwitch的布爾狀態,而不是走這條路線。該類的一個實例可以是單例,也可以包含在應用程序委託中。請參閱answer這兩種方法。

自定義類更好,因爲UISwitch只是表示數據模型中某些屬性的一種方法。如果明天你用另一種奇特的控制替代了UISwitch,第二個視圖控制器應該仍然可以繼續工作。兩個視圖控制器都有一個對這個自定義類的對象的引用。每當有變化時,第一個控制器都會更新這個對象。

類的接口可能是這樣的:

@interface DataValues : NSObject { 
    BOOL first; 
    BOOL second; 
    BOOL third; 
} 

@property BOOL first; 
@property BOOL second; 
@property BOOL third; 
+0

雖然我終於用cdespinosa的建議,但必須注意的是,您的解決方案精細工作過。 – 2010-01-17 02:10:35

相關問題