iPad使用触摸显示弹出框?

Posted

技术标签:

【中文标题】iPad使用触摸显示弹出框?【英文标题】:iPad use touches to display popover? 【发布时间】:2010-09-15 16:44:13 【问题描述】:

所以我一直在到处寻找解决这个问题的方法。我有一个表格视图,当用户选择它时,它会从单元格中显示一个弹出框。但是有一个错误,但我无法找到解决方案。基本上,一旦您从结果的第一页向下滚动,弹出框总是从屏幕底部出现,而不是从选定的表格单元格中出现。这样做的原因是我通过以下方式从单元格矩形创建弹出框:

CGRect cellRect = [tableView rectForRowAtIndexPath:indexPath];

self.detailController.contentSizeForViewInPopover = CGSizeMake(cellRect.size.width, 350);   
self.personDetailPopoverController = [[[UIPopoverController alloc] initWithContentViewController:self.detailController] autorelease];

[self.personDetailPopoverController presentPopoverFromRect:cellRect
                                        inView:self.view
                      permittedArrowDirections:UIPopoverArrowDirectionAny
                                      animated:YES];

这适用于前 8 行(我的单元格高 100 个单位),但会导致上面提到的问题,因为它试图在 y=1400 处显示它(对于第 14 个单元格等)。有谁知道从所选单元格显示弹出框的更好方法?也许是对触摸的创造性使用?任何反馈将不胜感激。谢谢!

【问题讨论】:

【参考方案1】:

您需要将矩形转换为视图的坐标系:

[self.view convertRect:cellRect fromView:tableView];

【讨论】:

那行不通。我需要将它应用到细节控制器吗?还是别的什么? 对不起,回去阅读文档。我没有将它保存在一个新的矩形中。谢谢! 牢牢掌握 UIView 的 framebounds 和坐标系统从长远来看将为您省去很多麻烦。祝你好运。

以上是关于iPad使用触摸显示弹出框?的主要内容,如果未能解决你的问题,请参考以下文章

触摸后关闭弹出框

iPad SplitViewController 以编程方式显示弹出框

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

iPad可以将导航控制器放在弹出框内吗?

在 iPad 上使用自定义背景图像创建 UIKit 弹出框

取决于弹出框的核心动画 - iPad