我有一个使用此tutorial创建的3个滑动ViewController 因此,HomeViewController是这3个视图的控制器。
代码是
Class HomeViewController //......
func prepareScrollView(){
let V1 : FirstViewController = FirstViewController(nibName: "FirstViewController", bundle: nil)
let V2 : SecondViewController = SecondViewController(nibName: "SecondViewController",bundle: nil)
let V3 : ThirdViewController = ThirdViewController(nibName: "ThirdViewController",bundle: nil)
self.addChildViewController(V1)
self.scrollView.addSubview(V1.view)
V1.didMoveToParentViewController(self)
self.addChildViewController(V2)
self.scrollView.addSubview(V2.view)
V2.didMoveToParentViewController(self)
self.addChildViewController(V3)
self.scrollView.addSubview(V3.view)
V3.didMoveToParentViewController(self)
var V2Frame : CGRect = V1.view.frame
V2Frame.origin.x = self.view.frame.width
V2.view.frame = V2Frame
var V3Frame : CGRect = V3.view.frame
V3Frame.origin.x = 2 * self.view.frame.width
V3.view.frame = V3Frame
self.scrollView.contentSize = CGSizeMake(self.view.frame.width * 3, self.view.frame.size.height)
self.scrollView.contentOffset = CGPoint(x: self.view.frame.width,y : self.view.frame.height)
}
在SecondViewController中,我创建了一个按钮来显示弹出视图,但它不起作用。 我认为原因是存在2 didMoveToParentViewController
SecondVC:
PopButton.addTarget(self, action: #selector(settingUpView), forControlEvents: .TouchUpInside)
func settingUpView(){
print("touched")
let popOverVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("PopUpView") as! PoPViewController
self.addChildViewController(popOverVC)
popOverVC.view.frame = self.view.frame
self.view.addSubview(popOverVC.view)
popOverVC.didMoveToParentViewController(self)
}
当我点击按钮时,它只显示print
但没有弹出任何内容,请问如何解决问题?
答案 0 :(得分:-1)
popOverVC.view.frame = self.view.frame
上面的代码不对。 self.view.frame.origin不是CGPointZero。