UITableview刷新单元格在部分标题下滚动
Posted
技术标签:
【中文标题】UITableview刷新单元格在部分标题下滚动【英文标题】:UITableview refreshing cells scrolling under section header 【发布时间】:2016-01-24 16:16:32 【问题描述】:我正在使用UzysCircularProgressPullToRefresh 来刷新我的表格视图。 我的 UITableView 有 1 个带有标题的静态部分,我希望它始终固定在表格的顶部(这就是我不想使用 UITableViewStyleGrouped 的原因)。 当 UITableView 处于刷新状态时,我开始滚动它,单元格在标题部分下滚动,这作为设计非常糟糕。 请检查图像
您可以通过将以下内容添加到项目中来自己测试它:
-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
return @"Header Section";
我试图找到一个解决方案,但经过大量搜索后没有找到任何解决方案。 谁能帮我解决这个问题?如何以任何方式解决这个设计问题?
【问题讨论】:
【参考方案1】:- (void)scrollViewDidScroll:(UIScrollView *)scrollView
CGFloat navBarMaxY = CGRectGetMaxY(self.navigationController.navigationBar.frame);
if (scrollView.contentInset.top > navBarMaxY)
if (scrollView.contentInset.top > -scrollView.contentOffset.y)
UIEdgeInsets insets = scrollView.contentInset;
insets.top = MAX(-scrollView.contentOffset.y, navBarMaxY);
scrollView.contentInset = insets;
【讨论】:
在纵向上效果很好,但在横向模式下仍然面临问题 这是一个例子。我以为你会自己继续。我更新了我的答案。 你太棒了 :) 谢谢【参考方案2】:我自己也遇到过这个问题。
对我来说,解决方案是拖放UITableView
,所以它不是我认为的第一个元素。
https://***.com/a/27815006/391605
笨蛋,嘿?试一试。
希望这会有所帮助。
【讨论】:
我没有在我的项目中使用 xib。都是用代码写的。你也可以在 GitHub 的 UzysCircularProgressPullToRefresh 项目中查看。 即使您没有使用 .xib 文件,您所看到的确实与我看到的 Xcode 错误相同...所以,它可能仍然值得 插入 作为 UIViewController 中第一个子视图项的组件。以上是关于UITableview刷新单元格在部分标题下滚动的主要内容,如果未能解决你的问题,请参考以下文章
UITableView 选定的单元格在滚动时不会保持选中状态
用于 UITableView 的自定义 XIB 单元格在滚动时卡住/卡住