如何在 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? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章