有啥方法可以从 UITableView 索引中呈现 UIPopover 吗?

Posted

技术标签:

【中文标题】有啥方法可以从 UITableView 索引中呈现 UIPopover 吗?【英文标题】:Is there any way to present an UIPopover from an UITableView index?有什么方法可以从 UITableView 索引中呈现 UIPopover 吗? 【发布时间】:2010-07-30 12:56:48 【问题描述】:

我想展示一个来自 UITableView 特定索引的 UIPopover。 这是我的代码:

if (indexPath.row == 5) 
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
    EnginesPopoverController  *enginesPopoverController = [[EnginesPopoverController alloc] initWithNibName:@"EnginesPopoverController" bundle:nil];

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

    self.popoverController = popover;
    popoverController.delegate = self;

    [popover release];
    [enginesPopoverController release];

    CGPoint point = 670, 600;
    CGSize size = 450, 216;

    [popoverController presentPopoverFromRect:CGRectMake(point.x, point.y, size.width, size.height) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];                 

如果我尝试从 UIButton 呈现 Popover,它会顺利...

谢谢!

【问题讨论】:

这段代码是在哪个方法中定义的? - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 【参考方案1】:

这就是我的工作:

CGRect cellRect = [self.tableView rectForRowAtIndexPath:indexPath]; 
CGRect popoverRect = CGRectMake(self.view.bounds.size.width - self.popoverController.popoverContentSize.width,
                                CGRectGetMidY(cellRect),
                                1.0, 1.0);

我使用的x 位置将弹出框放置在屏幕的右侧。这可能不是你想要的。要找到实际的触摸点,您可以使用手势识别器。

作为回报,请尝试回答我的相关问题:Popover's arrow to track an object in a scrollview

【讨论】:

【参考方案2】:

操纵大卫的代码我得到了这个: (我的弹出窗口称为“storytPop”)- 我的弹出窗口来自工具栏,我希望下一个 tableview 显示在右侧。

CGRect cellRect = [self.tableView rectForRowAtIndexPath:indexPath]; 
[self.storytPop presentPopoverFromRect:cellRect inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

【讨论】:

以上是关于有啥方法可以从 UITableView 索引中呈现 UIPopover 吗?的主要内容,如果未能解决你的问题,请参考以下文章

Next.js |有啥方法可以呈现 .xml 文件?

从分离的 UITableView 推送/呈现 ViewController

从 NSArray 为 UITableView 创建索引

从 UITableView 选定索引更新 detailDescriptionLabel 数据

cad索引图和节点图有啥区别

来自 Sqlite (FMDB) 的 UITableView 中的部分和索引