-3

任何人都指导我如何从 UIView 调用 uipopovercontroller

4

1 回答 1

3

创建一个新UIViewController的弹出框将显示。让我们称之为“ detailController”。在您当前的视图中,添加一个带有按钮的按钮IBAction......让我们将此操作称为“makeItPop”。

实现以下代码:

- (IBAction)makeItPop
{
    UIViewController *detailControllerView = [[detailController alloc] initWithNibName:@"detailController" 
                                                                           bundle:nil]; 

    UIPopoverController* aPopover = [[UIPopoverController alloc] initWithContentViewController:detailControllerView];
    [aPopover setPopoverContentSize:CGSizeMake(320, 320)];
    [detailController release];
    [aPopover presentPopoverFromRect:CGRectMake(200,200,-100,-100) inView:self.view  permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}

如果要使用 UIPopverController 委托,请在头文件中实现它并添加:

[aPopover setDelegate:self];

那应该这样做。使用不同的尺寸和位置会将盒子放在另一个位置。

于 2010-05-09T20:50:30.753 回答