2010-09-15 92 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