UITabBar 中的 UICollectionView 在首次加载时显示错误的位置

Posted

技术标签:

【中文标题】UITabBar 中的 UICollectionView 在首次加载时显示错误的位置【英文标题】:UICollectionView in UITabBar display wrong position on first load 【发布时间】:2014-11-05 03:52:55 【问题描述】:

我已经被困了好几天了。问题是第一次加载后位于选项卡栏中的集合视图。会显示不正确。如果我按任何选项卡,问题将永远消失,直到应用程序重新启动。请注意,它不仅仅是出现的空白。整个容器正在向下移动,因此出现了空白。

这个问题似乎只存在于 iPhone 而不是模拟器。用 iPhone 4 和 5 试过。

第二次尝试后,我认为它只发生在 iOS 7 而不是 iOS 8

可以确认它只发生在 iOS 7 上。将一部 iPhone 5 升级到 iOS 8 并且该错误消失了,而另一部 iPhone 5 仍然是 iOS 7,并且每次都会出现此问题。

看到下面的空白了吗?

按下另一个标签后它消失了

如果我回到原来的,它甚至不会回来

我在这里上传了一个有这个问题的示例项目:https://github.com/athiwatc/UITabBarDisplayWrongPosition

【问题讨论】:

我已经在 xcode6 中运行了你的代码,它工作正常。 @RameshMuthe 我有版本 6.1 (6A1052d) 并在 iPhone 5 和 iPhone 6 上运行它都有这个问题。模拟器好像没有这个问题。 是的,在iPhone 4上试过。这个问题似乎只存在于真机而不是模拟器。 它在 iPhone 4s 上运行良好,初始加载时没有空白,只有黑色。 @gabbler 这个问题现在看起来很不一致。我想我会尝试将我的 iPhone 5 从 7 升级到 8.1,看看这是否能解决问题。 【参考方案1】:

如以下屏幕截图所示更改约束:

【讨论】:

示例项目中已经设置好了,还是不行。 128,但我尝试了其他的。没有什么可悲的。它似乎也只发生在真实设备中。

以上是关于UITabBar 中的 UICollectionView 在首次加载时显示错误的位置的主要内容,如果未能解决你的问题,请参考以下文章

自定义UITabBar中的More UIBarButtonItem

IOS:UITabbar 项目单击一次又一次,它正在减少IOS 7 中的UITabbar 按钮项目大小

将 UITabBar 放置在 UITabBarController 中的屏幕顶部

iOS 11 中的横向 UITabBar 中的 UITabBarItem

iOS 5 中的 UITabBar 高度

iOS7中的UITabBar徽章位置