iOS 10 GM 嵌入的 UITableView 和 UICollectionView contentSize 错误且滚动指示器未显示

标签 ios swift autolayout swift3 ios10

我的 UI 有一个带有两个嵌入 View 的 View Controller ,如下所示:

-----------------
|        |      |
|  List  | Grid |
|        |      |
-----------------

ListView 有一个UITableView,网格有一个UICollectionView。两者在 iOS 9 中都运行良好。

在 iOS 10 中,我遇到两个问题:

  • 两个 View 都滚动超过其内容。内容太大。
  • 都不显示滚动指示器。

还有其他人遇到过嵌入式 View Controller 中的 ScrollView 的这些问题,并且知道如何解决它吗?

注意:我觉得这可能与旧的(新的)自动调整大小/ Spring 和支柱系统有关,以及在 Storyboard 中作为自定义对象添加的 View 被调整为 1000x1000 的奇怪行为。

最佳答案

问题是我正在使用另一个 View (在本例中为工具栏)的 .frame 属性来计算 tableView 的 contentInsets。该 View 的框架在 viewDidLoad 中被查询(可能在设置之前)并返回 1000x1000。我已用约束替换了 .frame 属性的所有查询,它帮助我解决了所有这些 iOS 10 大小调整问题。

关于iOS 10 GM 嵌入的 UITableView 和 UICollectionView contentSize 错误且滚动指示器未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39443328/

相关文章:

ios - 当我使用自动布局移动 View 时,为什么 XCode 5 不在 Storyboard 中添加约束

ios - 附加PathComponent后路径不同(_ :)

swift - 插入光标颜色和大小

ios - Swift: AVPlayer - 如何从 URL 获取 mp3 文件的长度?

ios - 在函数中调用 Collection View 时返回 nil

ios - UIStackView旋转

ios - 如何以父 View 大小的百分比设置 View 的高度

ios - 带方角的 UISegmentedControl

ios - 点击搜索栏时,Tableview 单元格消失 - Swift

ios - 使用自动布局时, subview 不适合 UIScrollView