如何在 ipad 中的 tableview 单元格上显示弹出框单击

Posted

技术标签:

【中文标题】如何在 ipad 中的 tableview 单元格上显示弹出框单击【英文标题】:how to display popover click on a tableview cell in ipad 【发布时间】:2011-12-01 05:55:55 【问题描述】:

我在我的应用程序中使用 TableView,当我单击表格单元格时,我想要一个弹出视图,表格单元格中的所有内容都应该显示在弹出视图中,所以请建议我怎么做?

我下面有一些示例代码不起作用..所以建议使用代码我希望单元格中的所有内容都显示在弹出视图中。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

UIView *aView = [[UIView alloc] init];
UIPopoverController *popoverController = [[UIPopoverController alloc] 
                                          initWithContentViewController:aView];
popoverController.popoverContentSize = CGSizeMake(320, 416);
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
[popoverController presentPopoverFromRect:cell.bounds inView:cell.contentView 
                 permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

【问题讨论】:

【参考方案1】:

UIPopoverController 类参考明确指出

要显示一个弹出框,创建这个类的一个实例并展示它 使用适当的方法之一。初始化实例时 此类,您必须提供提供 弹出框的内容。弹出框通常从 查看他们呈现的控制器

你的 popoverController 应该有一个视图控制器而不是一个视图。

YourViewController *aViewController = [[YourViewController alloc] initWithNibName:nibName bundle:nil];
UIPopoverController *popoverController = [[UIPopoverController alloc] 
                                          initWithContentViewController:aViewController];

那么你就可以把这个pop over展示出来了

【讨论】:

@7KV7:+1 的好答案..! :] @7KV7 我应该在情节提要中添加新的视图控制器吗?【参考方案2】:

您的代码很好,但是 你应该有 UIViewController 而不是 UIView。

【讨论】:

【参考方案3】:

你必须传递视图控制器而不是视图

【讨论】:

最好避免重复的答案以使网站更有效。请为类似的答案投票,而不是重复

以上是关于如何在 ipad 中的 tableview 单元格上显示弹出框单击的主要内容,如果未能解决你的问题,请参考以下文章

在 tableView:cellForRowAtIndexPath 中确定 iPhone 和 iPad 的不同单元格:

如何在 iPad 上的 iOS 7 上的 UITableView 单元格右侧绘制图像?

在 iPad 上编辑时编辑 tableview 缺少背景颜色

更改表格视图单元格高度仅适用于 iPad

如何通过单击单元格中的按钮来删除 tableView 中的单元格?使用核心数据

如何在可重用的 tableView 单元格中更新 UITextfield 中的文本值,每个单元格中的值不同