如何在 ipad 中创建 Popover? [关闭]

Posted

技术标签:

【中文标题】如何在 ipad 中创建 Popover? [关闭]【英文标题】:How to create Popover in ipad? [closed] 【发布时间】:2011-08-04 10:03:37 【问题描述】:

我想在我的 iPad 应用程序中开发一个弹出框。 UIButton 触发器将调用弹出框,并且该弹出框将包含 UITableViewController。

首先我需要一个弹出框。

需要一些示例代码或方向或链接。

提前致谢。

【问题讨论】:

查看documentation here和here中的示例代码。您还应该查看UIPopoverController class reference。 感谢分享文档。 【参考方案1】:

在你的viewcontroller按钮动作上写下这段代码:

- (IBAction)openAllRhymes:(id)sender
    UIButton *button = (UIButton*)sender;

    PopupTableView *tableViewController = [[PopupTableView alloc] initWithStyle:UITableViewStylePlain];


    popover = [[UIPopoverController alloc] initWithContentViewController:tableViewController];
    [popover presentPopoverFromRect:CGRectMake(button.frame.size.width / 2, button.frame.size.height / 1, 1, 1) inView:button permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];

    [tableViewController release];

现在你已经在 tableviewcontroller 中创建了一个用于 popover 的 tableview:

self.clearsSelectionOnViewWillAppear = NO;
self.contentSizeForViewInPopover = CGSizeMake(108,400);

【讨论】:

【参考方案2】:

阅读documentation,一切尽在其中。不明白的可以从ios开发的通用tutorials开始,或者具体询问不明白的部分。在使用弹出框有意义之前,您需要对视图控制器的工作方式有充分的了解。 View Controller Programming Guide 也有专门关于弹出框的部分。

【讨论】:

【参考方案3】:
  TAableViewController *tableViewController = [[[TAableViewController alloc] initWithNibName:@"TAableViewController" bundle:[NSBundle mainBundle]] autorelease];
    UINavigationController *nav = [[UINavigationController alloc]
                                   initWithRootViewController:tableViewController];


    UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:nav];
    [nav release];
    popover.delegate = self;
    popover.popoverContentSize = CGSizeMake(320, 497);
    [popover presentPopoverFromRect:button.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

在这里:-

1) TAbleViewController 有你要加载的表。 2)我将此添加到导航控制器 3) 导航控制器到弹出框

【讨论】:

以上是关于如何在 ipad 中创建 Popover? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

iOS 5.1.1 Popover 不会自动关闭

如何在 iPad 的视图控制器中创建多个表格视图?

如何在单独的类中创建通用 Iphone/Ipad 应用程序?

如何删除 iPad 的 Popover 箭头及其边框

如何在目标 c ipad 应用程序中创建要写入的新文本文件

关闭 Popover 并重新加载 parentViewController