2016-11-14 102 views
0

我在第一個視圖控制器和另一個視圖控制器中有一個ImageView動作按鈕 - 該按鈕的作用是更改圖像中的首先通過此代碼查看控制器。我想從一個視圖控制器到另一個視圖控制器的動作3 xcode

ImageThemed是第一個ImageView。

此操作位於第二個視圖控制器中。

@IBAction func MM(_ sender: Any) { 
    ImageThemed.image = UIImage(named:"Nike.png") 

所有我想要做的是通過在第二視圖控制器按下按鈕設置在所述第一視圖控制器的圖像。由於第二視圖控制器嵌入在第一視圖控制器中。

我該怎麼做?

+0

還沒有。因爲我不知道,如何做到這一點..! – AshishVerma

+0

你有沒有搜索過它?有很多解決方案,因爲你只需要谷歌它。 – Rajat

+0

你有什麼建議嗎? – AshishVerma

回答

0

可能最好的解決方案是使用代表團。 你必須在第二個視圖控制器(帶有按鈕)來聲明協議

protocol SomeOtherViewControllerDelegate {  
    func changeImageButtonPressed() 
} 
... 

class SomeOtherViewController:UIViewController { 
... // your existing properties 
var delegate: SomeOtherViewControllerDelegate! 
... // properties, methods etc... 
} 

你也必須符合該FirstViewController(具有UIImageView)到您的協議SomeOtherViewControllerDelegate

class FirstViewController: UIViewController, SomeOtherViewControllerDelegate { 
... 
    func changeImageButtonPressed() { 
     ImageThemed.image = UIImage(named:"Nike.png") // change the image 
    } 
} 

那麼無論你中嵌入SomeOtherViewController到您FirstViewController,你必須設置委託:

let someVC:SomeOtherViewController = ... 
// self = your FirstViewController instance 
someVC.delegate = self 
相關問題