2017-10-12 4 views
0

4つのビューにHeaderpartがあり、コンテナビューにアウトソーシングして、4つのビューすべてで同じフィールドとレイアウトを使用しています。私のコンテナの中に私はデータでいっぱいにしたくなるラベルをたくさん持っています。私の問題は、ユーザーが選択したゲームに合わせてラベルを記入する必要があることです。ゲームは私のプレーヤークラスの列挙です。私はどのように私は私のcontainerview内部からその情報を得ることができ、私のコードを実行するためにゲームの変数を設定することはできません。私のコンテナビューがコンテナビューの外にあるというビューからストーリーボードIDを取得するソリューションはありますか?コンテナビューから、Swiftのコンテナを含むビューコントローラにどのようにアクセスしますか?


スイッチゲーム

場合.Coinflip:

Player1PointsLabel.Text =(player1.points.coinflip)

場合は

Player1PointsLabel.Text =(player1を.RollingDices。 points.rollingdices)


多分私は何か間違った、賢明なデザインをした、私はまだ経験していないので、私はまた助言のために開いている。

お礼

答えて

0

あなたの質問の目標はあまり明確ではありません。

ビューのスーパービュー(サブビューを含むビュー)にアクセスする場合は、「myView.superview」を使用します。

あなたのUIViewControllerをホストするUIViewControllerにアクセスする場合は、 'myViewController.presentingViewController'を使用します。

func viewController(forView: UIView) -> UIViewController? { 
    var nr = forView.next 
    while nr != nil && !(nr! is UIViewController) { 
    nr = nr!.next 
    } 
    return nr as? UIViewController 
} 
0
:あなたはあなたのビューを収容するのUIViewControllerにアクセスしたい場合は、最初のUIViewControllerまたはチェーンの最後に到達するまで

最後に、あなたはレスポンダチェーンを歩かなければなりません(UIViewのは、UIResponderのサブクラスです)

メインコントローラのprepareForSegueメソッドを実装します。

セグレット名に基づいて、destinationコントローラへの参照を作成し、コンテナ表示を管理する

関連する問題