2017-08-17 14 views
1

私は2つのViewControllerを持っています。このマップに適用する必要のある多くの設定を含む、最初のマップ(MapVC)と2番目のマップ(SettingsVC)。iOSのプロトコルで複数の値を渡す適切な方法

私は私が、私はこのプロトコル内の関数を指定することができます知っている

protocol MapSettingsDelegate: class {} 

などのプロトコルを作成するためにいいアイデアだろうと思いました。しかし、私が多くの設定をしているとき、どうすればいいのですか?SettingsVCからMapVCにどのように渡すべきですか?

+4

構造体の定義詳細はお問い合わせ気軽に内側にそれを実装? 'MapSettings' –

答えて

5

例:

struct MySettings { 
    var value1: String 
    var value2: String 
    // and so on... 
} 

protocol MapSettingsDelegate: class { 
    func settingsUpdated(newSettings: MySettings) 
} 

とあなたのコントローラ

class MapVC : MapSettingsDelegate { 
    ... 
    func settingsUpdated(newSettings: MySettings) { 
     // Update everything you need 
    } 
    ... 
} 

関連する問題