私は4 UIViewController
、すなわちvcA、vcB、vcCおよびvcDを持っています。現在、vcBには2行のtableView
があります。そして、vcBは、iPadの設定画面のような半面でvcAでサブビューされます。ここまでは正常ですが、vcBのtableViewの最初のセルをクリックすると、vcBを別の半面にサブビューする必要があります。同様に、vcBのtableviewの2番目のセルvcDをサブビューし、vcCを削除する必要があります。サブビューの代理人
uは "通知" のVCDを選択することにより、similary &をsubviewdする必要があり、他のVCCのビューがsubViewedしなければならない "を選択国を" 選択とし、VCCが削除する必要があります。
は、ここに私の画面です。 、フレームについて心配しないで、私はそれを設定します。ここで親ビューはvcAであると仮定します。
ここでは、私はdelegate
で試しましたが、サブビューでdelegate
が動作していないと思いますが、これはNSNotificationCenter
で可能ですが、他の方法がありますか?
ありがとうございました。ありがとうございます。
は、私は結果を得るために使用している方法に従い
を更新しました。しかし、正しい方法ではなく、私が探していることも起こっていないことを知っています。
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print(indexPath.section)
print(indexPath.row)
if UIDevice.Display.typeIsLike == UIDevice.DisplayType.ipad {
let iPadVc = iPadSettingViewController()
if indexPath.section == 0 && indexPath.row == 0 {
var sliderVC: SettingsViewController! = nil
sliderVC = self.storyboard?.instantiateViewController(withIdentifier: "SettingsViewController") as! SettingsViewController
sliderVC.view.frame = CGRect(x:0, y: 64, width: CGFloat((iPadVc.view.frame.size.width)/2.4), height: CGFloat(iPadVc.view.frame.size.height-64))
iPadVc.view?.addSubview(sliderVC.view)
}
else if indexPath.section == 0 && indexPath.row == 2 {
var countryVC : CountryViewController! = nil
countryVC = self.storyboard?.instantiateViewController(withIdentifier: "CountryViewController") as! CountryViewController
countryVC.view.frame = CGRect(x:CGFloat((iPadVc.view.frame.size.width)/2.4), y: 64, width: CGFloat((iPadVc.view.frame.size.width) - (iPadVc.view.frame.size.width)/2.4), height: CGFloat(iPadVc.view.frame.size.height-64))
iPadVc.view?.addSubview(countryVC.view)
}
}
}
vcA.view
にあなたがしようとしたビューコントローラの交換のコードを追加、追加しながらvcB
にvcA
オブジェクト参照を渡します。それはiPad専用です。あなたもiPhoneをサポートしていますか? – Subramanian@Subramanianそれは当面iPad専用です。iPhoneの場合は画面が異なって見えますが、私はすべてiPhone用ですが、iPad用に固執しています。 :/ –
あなたが試したコードを追加できますか? – Subramanian