我正在尝试在UIViewController中嵌入自定义视图。但是,当显示时,由于它不在UIView框架中,因此无法单击。
viewDidLoad:
@IBOutlet var theVC_InVC_Test: UIView!
@IBOutlet var TableView: UITableView!
override func viewDidLoad() {
TableView.delegate = self
TableView.dataSource = self
func embed(_ viewController:UIViewController, inView view:UIView){
viewController.willMove(toParent: self)
viewController.view.frame = view.bounds
view.addSubview(viewController.view)
self.addChild(viewController)
viewController.didMove(toParent: self)
}
embed(sidemenutest1(), inView: theVC_InVC_Test)
}
sidemenutest1 UIViewController:
func popItOver(){
let PopOverVC = UIStoryboard(name:"Main",bundle: nil).instantiateViewController(withIdentifier: "CoinsPopUp") as! CoinsPopUpViewController
self.addChild(PopOverVC)
PopOverVC.view.frame = UIScreen.main.bounds
self.view.addSubview(PopOverVC.view)
PopOverVC.didMove(toParent: self)
}
@IBAction func storeAction(_ sender: Any) {
popItOver()
}
它显示的很好,但是它不是可单击的。当我尝试单击子视图按钮时,将单击TableView,而不是该子视图。
您不应该将弹出菜单添加为容器视图控制器。它应从控制器显示为模态视图控制器,并将其背景视图颜色设置为半透明灰色。