首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iOS 11 UITableView bug

iOS 11 UITableView bug
EN

Stack Overflow用户
提问于 2017-09-14 15:52:59
回答 2查看 12.8K关注 0票数 19

该bug可以使用回购这里再现。

我的UITableView中有一个奇怪的bug影响着我在UITableView 11中的项目。问题中的TableView是分组的,有可扩展的单元格。

我的iOS 10分支中没有出现许多奇怪的效果:

  1. 标题叠加
  2. 当单元格发生折叠时,当内容大小高于UITableView容器大小时,会出现奇怪的传送问题。
  3. 当内容大小超过容器大小时,当内容大小超过容器大小时,在滚动开始时将奇怪的传送到表视图顶部
  4. 单元格大小是错误的(经常)

在苹果开发者论坛这里上,也有一张似乎相关的门票。

,我尝试了,但没有成功,

代码语言:javascript
运行
复制
if #available(iOS 11.0, *) {
    tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentBehavior.never
}

我试图在iOS 11中找到可能导致这个问题的行为。

任何帮助都将不胜感激!

编辑:裁剪到边界有帮助(但最终,它隐藏/剪辑了问题)。我仍然有一些问题(2,3和4)。当我试图打开一个单元时,它会传送回顶部,而不是顺利地运行。当我打开一个单元格并希望顺利地滚动到它时,它会传送到顶部,然后只滚动到它。(必须增加一节以显示)。

下面是这个问题的视频(使用iPhone 7 Plus,iOS 11,Xcode 9黄金母版):https://youtu.be/XfxcmmPdeoU

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-26 21:41:43

在iOS 11中,所有估计的UITableView属性(estimatedRowHeightestimatedSectionHeaderHeightestimatedSectionFooterHeight)默认为UITableViewAutomaticDimension

我看到了,对于你的细胞来说,这很好,因为你要返回UITableViewAutomaticDimension in heightForRow。然而,对于您的节头和页脚,您没有使用自动调整大小的方法。我将尝试通过将estimatedSectionHeaderHeightestimatedSectionFooterHeight设置为0来禁用页眉/页脚中的所有自动调整大小行为。

来源:iOS 11浮动TableView报头

票数 24
EN

Stack Overflow用户

发布于 2017-10-20 15:01:48

假设您的IBOutlets和变量在StandardHeaderView.swift中不是私有的,尝试一下这个方法:

代码语言:javascript
运行
复制
    func toggleSection(section: SectionType) {
    self.sectionsOpened[section] = !self.sectionsOpened[section]!

    let sectionIndex = self.sections.index(of: section)!

    let indexPath = IndexPath(row: 0, section: sectionIndex)

    UIView.animate(withDuration: 0.25) {
        self.tableView.reloadRows(at: [indexPath], with: .automatic)
        if let headerView = self.tableView.headerView(forSection: sectionIndex) as? StandardHeaderView {
            headerView.configWith(title: headerView.headerTitleLabel.text!, isOpen: self.sectionsOpened[section]!, selector: headerView.selector)
        }

        self.tableView.scrollToRow(at: IndexPath(row: 0, section: sectionIndex), at: .top, animated: true)
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46223541

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档