Self Sizing Cells使UITableView跳跃

igr*_*rik 12 objective-c uitableview reloaddata ios

我有一个UITableView,每个单元格都有一个图像和两个标签,正如你在第一张图片上看到的那样

在此输入图像描述

所以我尝试使用自我调整细胞,一切都很好,除了两件事:

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

查看第一个单元格上的标签.

2)这是一个艰难的.我正在滚动表格,一切都很好,但是当我选择行时问题就出现了.它正在推动我进行详细视图,但是当我按下"返回"并返回到主视图时,tableview跳转,所以我回到不选择的行,如果我滚动表格它不会滚动平滑,但是跳跃.以下是两个视频的链接,第一个显示滚动顺畅https://www.youtube.com/watch?v=9wAICcZwfO4如果我不去详细视图,第二个显示跳跃问题https:/ /www.youtube.com/watch?v=fRcQ3Za1wDM.

它绝对肯定与自我调整单元格有关,因为如果我不使用它,则不会发生这种问题.

igr*_*rik 7

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

问题1

我添加了这两行

[cell.contentView setNeedsLayout];
[cell.contentView layoutIfNeeded];
Run Code Online (Sandbox Code Playgroud)

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

问题2

解决方案似乎非常简单.我只需要在其中实现viewWillDissapear和重新加载数据,因此代码看起来像这样

- (void)viewWillDisappear:(BOOL)animated;{
    [super viewWillDisappear:animated];
    [self.tableView reloadData];
}
Run Code Online (Sandbox Code Playgroud)

对我来说解决方案很简单,如果它对某人不起作用,我在这里找到了一些有用的链接.
1)UITableView布局混乱推送segue和返回.(iOS 8,Xcode beta 5,Swift)
2)http://useyourloaf.com/blog/2014/08/07/self-sizing-table-view-cells.html


归档时间:

查看次数:

4916 次

最近记录:

7 年,2 月 前