2017-08-30 74 views
1

我在表格视图中有几个单元格。现在,在任何给定的时间点,我想计算视图中当前单元格的高度,即如果它是通过视图的3/4,则它应该返回(单元高度)* 3/4高度。当前单元格的快速高度查看

我已经计算在以下方式当前视图:

let visibleRect = CGRect(origin: tableView.contentOffset, size: tableView.bounds.size)

现在,当,当我停止滚动,我想找到特别indexpath的细胞,这是我在这里计算的当前高度。

let visiblePoint = CGPoint(x: visibleRect.midX, y: visibleRect.midY) let visibleIndexPath = tableView.indexPathForRow(at: visiblePoint)!

我希望我很清楚。谢谢您的帮助。

干杯!

+0

你的问题是什么?我怎么帮你? –

+0

我需要视图中单元的高度。我的意思是,如果单元格的实际高度是500并且到了一半,那么我想要达到那个高度。 基本上,我想检查相对于当前偏移量的视图中单元格的高度。 –

+0

你需要在你的tableView的可见部分中间的单元格的高度是你需要什么? –

回答

1

要获得UITableViewCell你所期望的indexPath容易后,你哟调用此方法self.tableView.cellForRow(at: indexpath)后,您可以访问到您的框架,并使一个路口与先前计算visibleRect你必须有你所需要的

 if let cell = self.tableView.cellForRow(at: indexpath) as? UITableViewCell 
     { 
      let intersection = cell.frame.intersection(visibleRect) 
      debugPrint(intersection.size.height) 
     } 
+1

该死!这只是跳过了我的想法。这正是我一直在寻找的。非常感谢您快速及时的回复。干杯! –

+0

我很高兴帮助你!,快乐编码@AakashDave –

+0

我已经得到了细胞,但真的忘了使用十字路口。再次感谢! –