私は2つのコンテナBとCと2つのそれぞれのuiviewcontrollerを持つ親クラスAを持っています。私はUISegmentContolを使用して2つのコントローラを切り替えています。親クラスには、UiViewController BとCに渡すオブジェクト「変数」があります。UISegmentControlを介してchildViewControllerにデータを渡す
My DouBt: 親クラスから2つの子クラスにオブジェクトを共有するにはどうすればよいですか? 親クラスの子クラスの参照を作成するにはどうすればよいですか?
class A: UIViewController {
@IBOutlet weak var segment: UISegmentedControl!
@IBOutlet var containerSearch: UIView!
@IBOutlet var containerAdvancedSearch: UIView!
var variables: Variables?
override func viewDidLoad() {
super.viewDidLoad()
let a = variables?.bankNameLong
print("from " + a! + "")
}
@IBAction func actionSwitchSegments(sender: AnyObject) {
if sender.selectedSegmentIndex == 0 {
UIView.animateWithDuration(0.5, animations: {
self.containerChangePassword.alpha = 1
self.containerAbout.alpha = 0
})
} else {
UIView.animateWithDuration(0.5, animations: {
self.containerChangePassword.alpha = 0
self.containerAbout.alpha = 1
})
}
}
if segue.identifier == "segSearch"{
let newViewController: vConSearch = segue.destinationViewController as! vConSearch
newViewController.Variables = self.Variables
}else if segue.identifier == "segAdvancedSearch"{
let newViewController: vConAdvancedSearch = segue.destinationViewController as! vConAdvancedSearch
newViewController.Variables = self.Variables
}
私はセグエを使用してみましたが、それは唯一の子のコントローラで動作します。 しかし、segueを実行すると、UiSegmentControlをクリックするたびに新しいインスタンスが作成されることはありません。
こんにちは@Darth Vaderさんがお手伝いできますか? performSegueWithIdentifierを呼び出す場所からの – Cloy
??親クラスの – Ujjwal
vConSettings – Cloy