更改UIPopoverView中显示的视图

时间:2013-09-12 21:51:15

标签: ios objective-c cocoa-touch

所以我提出了一个像这样的UIPopoverView:

if (self.BStatePopoverViewController == nil) {
        RedStatePopoverViewController *settings =
        [[RedStatePopoverViewController alloc]
         initWithNibName:@"RedState"
         bundle:[NSBundle mainBundle]];

        UIPopoverController *popover =
        [[UIPopoverController alloc] initWithContentViewController:settings];

        popover.delegate = self;

        self.BStatePopoverViewController = popover;
    }

    [BStatePopoverViewController setPopoverContentSize:CGSizeMake(320, 445)];
    [self.BStatePopoverViewController presentPopoverFromRect:[sender bounds] inView:sender permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

一旦视图加载到popover中,我就有了一个按钮,我想用它在popover中呈现一个新的UIViewController。我尝试将其作为模态视图呈现,但这会更改父视图而不是弹出窗口中的视图:

PopupDischargeViewController * dischargeview = [[PopupDischargeViewController alloc] initWithNibName:@"PopupDischargeViewController" bundle:nil];
[self presentModalViewController:dischargeview animated:NO];

任何有关我如何做到这一点的帮助将非常感激。

谢谢!

1 个答案:

答案 0 :(得分:0)

要更改视图控制器,弹出窗口应在初始化后显示,使用UIPopoverController的方法– setContentViewController:animated:

您还可以将RedStatePopoverViewController添加到UINavigationController并使用其方法– pushViewController:animated:– popViewControllerAnimated:在视图控制器之间导航

希望这有帮助!