【问题标题】:UITableView layout animates on first loadUITableView 布局在第一次加载时动画
【发布时间】:2015-07-02 10:59:22
【问题描述】:

我在UITableView 中遇到了奇怪的行为。在我的应用程序中,当第一次显示包含 tableView 的UIViewController (ViewDidLoad?) 时,它的所有元素(从单元格到 UISearchBar)都在为其大小设置动画并最终获得正确的尺寸。在那之后(ViewWillAppear...),每次我呈现这个视图时,一切看起来都很好。我在 Storyboard 中使用自动布局,就像约束正在动画到它们的正确值一样。我正在使用 Swift 1.2、Xcode 6.4,它是一个基于 UITabBar 的应用程序。任何想法我做错了什么?谢谢!

编辑:我的UITableView 使用具有UITableViewAutomaticDimension 高度的自定尺寸单元格。它还包含一个UISearchBar
|搜索栏|
|---单元格 1---|
|---单元格 2---|
...

【问题讨论】:

  • solition 可以是这个条目stackoverflow.com/questions/24984650/…
  • 你用的是ios7还是8?滚动时也会发生这种情况吗?
  • @jarora 我使用的是 iOS 8,滚动时不会发生这种情况,只会在第一次加载时发生。我注意到,在另一个表格视图中,当我关闭键盘时,对于键盘覆盖的单元格,同样的行为。

标签: ios swift uitableview nslayoutconstraint


【解决方案1】:

这通常发生在动画正在进行时,而表格视图中的单元格即将加载。尝试查看文件中的所有动画,看看是哪个动画块将这些动画添加到表格视图单元格中。

此外,如果您使用 UIView 动画块为约束设置动画,请致电 [self.view layoutIfNeeded] 在动画块之前和块内。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 2023-03-28
    • 2015-10-08
    • 1970-01-01
    • 1970-01-01
    • 2016-02-17
    • 2016-11-21
    相关资源
    最近更新 更多