表格视图单元格在iOS 8上select时跳转
我试图更新我的应用程序的iOS 8和一个奇怪的问题,我不明白是每当我按表格视图单元格(在分组表视图),并推另一个视图控制器上的导航控制器,所有表视图的单元格跳转。 这就好像他们都降低了一点身高。
因此,当popup导航堆栈并返回到原始表格视图屏幕时,单元格再次跳转,这次他们增加高度并回到原来的样子。
我曾尝试使用UITableViewController,做我自己的表视图pipe理,不使用明确部分高度,删除所有自定义标题视图和框架,基本上任何我能想到的。
它发生在所有iOS 8仿真器上,以及运行iPhone 8和iPhone 8的实际设备上。
任何build议将真的帮助。
编辑:删除video
好吧,如果您使用默认的UITableViewCell
并为textLabel
和detailTextLabel
设置自定义字体,请确保为表视图设置rowHeight
或为tableView:estimatedHeightForRowAtIndexPath:
实现UITableViewDelegate
方法之一tableView:estimatedHeightForRowAtIndexPath:
相同的代码在早期版本的iOS上工作正常,但出于某种原因需要修复iOS 8。
我有同样的问题! 看起来像iOS 8 SDK使用estimatedRowHeight后,select一个行,然后导致整个tableview错误的高度,从而导致tableview本身的跳跃。
不设置estimatedRowHeight属性或实现委托方法将修复跳跃的错误。
我还没有find一个干净的解决scheme来解决它呢。
您可以使用以下代码实现自定义大小:
implement together: tableView.rowHeight = UITableViewAutomaticDimension; tableView.estimatedRowHeight = CGFloatValue (initial estimated height);
在你的故事板上,为你的单元格添加正确的约束。
注意:跳转问题有时会显示。
这个跳转问题的确切解决scheme是实现委托方法:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { return CGFloat; }