2016-04-18 43 views
0

我嘗試創建一個類MyViewControllerDesign.swift,它處理所有設計設置,如配置,修改......並且可以隨處調用。在UIViewController外部修改UIView的最佳方法

enter image description here

什麼是修改一個UIView的最好的辦法,這是在MyUIViewController創建,從MyViewControllerDesign的功能?

1 - 應我將MyUIViewController的上下文傳遞給hideMyView函數

func hideMyView(context: MyUIViewController){ 
    context.myView.hidden = true 
} 

2 - 或者我應該通過視圖hideMyView功能

func hideMyView(myView: UIView){ 
    myView.hidden = true 
} 

...但我必須從startTasks太把它傳遞...

func startTasks(myView: UIView){ 
    ... 
    myViewControllerDesign.hideMyView(myView) 
    ... 
} 

3 - 或者我應該讓上MyUIViewController hideMyView功能?

什麼是最好的方法?有處理這種情況的設計模式嗎?

回答

0

設計控制器持有對其管理的視圖和/或子視圖的引用是有意義的 - 您可以在您的View Controller中實例化MyViewControllerDesign時執行此操作。同樣,您的對象可以保留對設計控制器的引用,並根據需要調用相關方法。

這樣,視圖控制器仍處於過程的中心,並將模型層鏈接到視圖層。

相關問題