iOS Swift:呈现imagePicker后SlidingMenuView错误的位置

时间:2015-04-08 15:57:15

标签: ios swift uinavigationbar uiimagepickercontroller presentviewcontroller

我在TabBar控制器和导航控制器中的项目中使用PageMenu。 当我初始化"滚动菜单"我使用它在statusBar和导航栏下显示它:

pageMenu = CAPSPageMenu(viewControllers: controllerArray, frame: CGRectMake(0, UIApplication.sharedApplication().statusBarFrame.size.height + self.navigationController!.navigationBar.frame.height, self.view.frame.width, self.view.frame.height), options: parameters)

此解决方案运行正常,并将我的菜单显示在我想要的位置! 然后我在其中一个滚动视图中显示一个图像选择器视图。解雇后,菜单返回到初始位置(导航栏下方)......

避免此问题的任何解决方案? (如果您需要更多细节,我可以提供更多代码)

P.S。我不是母语为英语的人,所以我希望我的问题是可以理解的:)

3 个答案:

答案 0 :(得分:3)

添加了viewcontroller“pageMenu”作为父控制器的子节点,问题解决了

答案 1 :(得分:0)

它在Obj-C中,但Swift和我想的一样。 在父视图控制器中,将pageMenu添加为子VC:

[self addChildViewController:_pageMenu];

在子VC中,通过以下方式调用选择器:

UIViewController*vc=self.parentViewController.parentViewController;
[vc presentViewController:imagePickerController
animated:YES
completion:nil];

答案 2 :(得分:0)

问题是pageMenu是在viewDidLoad中添加的,而这里的视图没有正确的度量。 在故事板上创建容器视图,并在容器中添加PageMenu。 为我工作,虽然这可能不是一个好习惯