1

更改背景圖片我是相當新的Objective-C的,但一直沒能找到我要找尚未答案。爲MAINVIEW

我建立一個實踐應用程序,它倒計時天,直到特定事件(聖誕節)。這一切運作良好,但我想實現一個簡單的方法來改變背景圖片(從故事板創建)。該應用程序的當前設置是一個基本的實用程序應用程序,備用視圖包含一個UISegmentedControl,用於設置在倒數標籤後面顯示哪個背景圖像。

我知道我可以只推獨立的觀點,但似乎非常低效的。我相當確信我可以用NSNotifications更新的背景圖片,但我仍不清楚閱讀文檔如何實現它了。

+0

只是沒有得到它 - 是您要的問題,從配置來看溝通倒計時以改變它的背景呢?或者,你是否正在尋找它基於計時器自動更改(日更改等...) – bryanmac

+0

道歉不明確。只是想要一種方式從配置視圖到倒計時視圖進行通信,根據用戶在分段按鈕中按下哪個按鈕來更改背景。 –

回答

0

一種方法是使用委託。代表是回調。這樣可以避免一個視圖將引用傳遞給另一個視圖,並將其引入(引入耦合)。相反,通過正式協議提供回調,並委託給另一方。

下面是一個SO問題,涵蓋它:

What exactly does delegate do in xcode ios project?

另一種選擇是有一個共同的模式。使用單模式,多視圖可以共享一個模型(數據和操作),你可以使用NSNotificationCenter發送通知。當另一個視圖獲得通知後臺發生變化時,它可以查詢模型並更新背景。

相關文章:

Giving notification to another class with NSNotificationCenter

How to share an object with the entire project?

至於利弊走,基本上當你要廣播更改多個視圖的通知是好的。當兩個項目需要直接與某個抽象進行通信時,委派很好。

NSNotificationCenter vs delegation(using protocols)?

相關問題