2012-04-05 65 views
1

如果我需要在我的應用程序中的許多其他類中訪問同一個類的實例,是否在我的包含此實例的應用程序委託中創建屬性是一個好習慣,然後從我需要的任何位置訪問該屬性它在我的應用程序中,使用[UIApplication sharedApplication].delegate.instance存儲應用程序範圍的實例

回答

1

我不這麼認爲。最好的方法是使用單例類:link

祝你好運!

+0

那麼,爲什麼是一個更好的選擇?我看到它的方式,應用程序委託將貫穿整個應用程序的生命週期,並且它已經有一個單身人士可用。 – rid 2012-04-05 09:33:54

+0

使用appdelegate並不存在真正的問題,但這不是明智之舉。使用appdelegate僅用於處理來自操作系統的請求是一種很好的做法 – Zalykr 2012-04-05 09:59:46

+0

這很有道理。 – rid 2012-04-05 10:14:33

0

你可以這樣做,或者你可以像Heliem說的那樣使用單例。

但是,你需要參考類的委託:

((MyAppDelegate *) [UIApplication sharedApplication].delegate).instance; 
相關問題