您可以使用以下方法在其父视图或tableView的坐标内获取单元格的中心点:
CGPoint center = cell.center;
如果表视图的超级视图是UIView,如何在表视图的超级视图的坐标内获取单元格的中心点?
编辑:
该单元格位于tableView中,而tableView位于self.view中。我主要关注y坐标。我进行了测试以查看值应该是什么,但没有从convertPointToView获得所需的结果:
//debugger values appear below each line
CGRect viewRect = self.view.frame;
//(origin = (x = 0, y = 0), size = (width = 320, height = 568))
CGRect tableRect = self.tableView.frame;
//(origin = (x = 0, y = 108), size = (width = 320, height = 411))
CGPoint prelimcenter = cell.center;
CGPoint center = prelimcenter;
//(x = 160, y = 242)
prelimcenter = [cell convertPoint:prelimcenter toView:self.view];
// (x = 160, y = 526)
我希望Y坐标上的差异大约是108,这是帧中的差异。但是,使用convertPoint的不同点是284。我的语法/代码有什么问题?
答案 0 :(得分:0)
您可以使用convertPoint:toView:
方法。这是指向Apple's documentation的链接。
CGPoint center = cell.center;
center = [cell convertPoint:center toView:yoursuperview];
那应该将其转换为指定视图的坐标系。