UIPopoverController更改视图

时间:2012-08-13 08:36:32

标签: iphone ios xcode storyboard uipopovercontroller

我想在我的UIPopoverController中更改视图。

我有:

if (popoverController == nil) {
        UIStoryboard * storyboard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:nil];
        Help *d = [storyboard instantiateViewControllerWithIdentifier:@"Help"];
        //Help *d = [[Help alloc]initWithNibName:@"Help" bundle:[NSBundle mainBundle]];
        UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:d];
        popover.delegate = self;

        popoverController = popover;

    }

CGRect popoverRect = [self.view convertRect:[helpBtn frame] fromView:[helpBtn superview]];

popoverRect.size.width = MIN(popoverRect.size.width, 100); 
[popoverController presentPopoverFromRect:popoverRect inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

并且它加载了第一个视图,但是在第一个视图中我有按钮和白色它我想在storyboard中更改viewcontroller。

但是当我这样做时,它会以全屏视图而不是UIPopoverController打开新视图。

感谢您的帮助

Marko

1 个答案:

答案 0 :(得分:0)

有几种解决方案。

更好的方法是让您的视图控制器管理不同的视图,而不是更改视图控制器。这似乎更容易。

您还可以将视图控制器包装在导航控制器中,然后按模式推送或弹出或显示。

最后,您可以尝试解除/销毁您的popover并使用另一个视图控制器创建一个 new ,但是你必须摆弄动画以使其看起来不错。