2010-09-15 49 views
1

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

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]; 
+0

这没有奏效。我是否需要将其应用于细节控制器?或者是其他东西? – gabaum10 2010-09-15 17:14:46

+0

对不起,回去看了文档。我没有把它保存在一个新的矩形中。谢谢! – gabaum10 2010-09-15 17:17:54

+0

长久以来,牢牢掌握UIView的“框架”和“边界”和坐标系统将为您节省很多麻烦。祝你好运。 – 2010-09-15 17:25:05