自定义单元格使得UITableView跳转

我有一个UITableView,每个单元格有一个图像和两个标签,你可以看到第一张图片

在这里输入图像说明

所以我试图使用自我大小的细胞,一切都很好,除了两件事:

1)第一个和第二个单元格没有正确显示内容,但是当我向下滚动然后返回给他们一切正常。 我试图在viewDidApper中使用[tableview reloadData],但它没有帮助。 首先看标签,他们不适合。 您可以在此video上观看https://www.youtube.com/watch?v=I9DGBl1c5vg

看看第一个单元格上的标签。

2)这是一个艰难的。 我正在滚动桌子,一切都很好,但是当我select行时,问题就发生了。 这是推动我详细查看,但是当我按“返回”,并返回到主视图,桌面视图跳转,所以我回来没有选定的行,如果我滚动表,它不滚动平滑,但跳跃。 这里是两个video的链接,第一个显示,滚动是光滑的https://www.youtube.com/watch?v=9wAICcZwfO4如果我不去详细视图,第二个显示跳转的问题https:/ / /www.youtube.com/watch?v=fRcQ3Za1wDM 。

这是绝对肯定的自我大小的细胞连接,因为如果我不使用它,这个问题没有发生。 如果您需要显示正确function的video,请告诉我。

好的,我解决了这两个问题。

问题1

我已经添加了这两行

[cell.contentView setNeedsLayout]; [cell.contentView layoutIfNeeded]; 

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath return cell

问题2

解决scheme似乎很简单。 我只需要实现viewWillDissapear并重新加载数据,所以代码看起来像这样

 - (void)viewWillDisappear:(BOOL)animated;{ [super viewWillDisappear:animated]; [self.tableView reloadData]; } 

我的解决scheme很简单,如果它不适合某人,在这里我find了一些有用的链接。
1) UITableView布局搞乱推继续和返回。 (iOS 8,Xcode beta 5,Swift)
2) http://useyourloaf.com/blog/2014/08/07/self-sizing-table-view-cells.html

不幸的是我相信你问的两个问题都是IOS的错误。

问题(1)

这个博客提出了一个简单的解决scheme。

当表格视图第一次显示时,您可能会发现一些单元格尺寸不正确。 但是,当您滚动表格视图时,新的单元格将显示正确的行高。 要解决此问题,可以在视图出现后强制重新加载:

只需将以下内容添加到您的viewDidAppear方法。 我已经testing过,效果很好。

 [self.tableView reloadData]; 

问题2)

第二个问题是以下问题的重复:

IOS 8 UITableView自动resize的单元格在新视图控制器被按下时跳转/移动

问题本身的作者提出了一个解决方法,这似乎没问题。 不过,我还没有试过这个。

好的,我通过在sizeThatFits中caching我的单元格高度来解决这个问题,并在代理内返回估计单元高度的值。 精美的作品。

请随时向其他提出的解决scheme提出这个问题。