【问题标题】:iOS 10 selected TabBarItem disappearsiOS 10 选中的 TabBarItem 消失
【发布时间】:2017-01-24 12:54:31
【问题描述】:

我有一个应用程序,它在情节提要中使用基于 TabBar 的导航来导航到不同的视图。

该应用在 iOS7 - iOS9 上运行良好。但是在 iOS10 中,选项卡项目在被选中时会消失(图标和标题)。

标签栏完全在故事板中配置,没有自定义用户代码。在 XCode 中一切看起来都很好:

但是当应用程序在 iOS10 设备/模拟器上运行时,应用程序如下所示(图像显示同一标签栏中的不同选择,所有 3 个项目的行为相同)

此问题的原因可能是什么?有什么解决办法吗?

【问题讨论】:

  • 如果您找到了解决方案,请分享!我很难找到这个问题的根源。
  • 不幸的是,我从未找到解决方案,并且该应用程序目前以这种状态交付。我尝试的每种解决方法都会导致其他各种问题。目前我认为它在 iOS10 中存在一些错误,并希望 Apple 能够修复这个问题......哈哈,因为这会发生......
  • 你用什么 XCode 版本来编译?我仍在使用 XCode 7.3,也许它在使用 8 时可以正常工作。我需要更新我的项目以尝试...
  • 我正在使用 XCode 8.0 进行编译

标签: ios user-interface ios10


【解决方案1】:

我终于找到了解决这个问题的方法。我仍然不确定这是由于 iOS 10 中的更改还是错误造成的。

摘自对一个老问题的回复: https://stackoverflow.com/a/39884669/1567923

您需要创建一个自定义 TabBarViewController 并在情节提要中使用它。 在该视图控制器中执行类似的操作,直接在代码中设置 tintColor:

class UIMeeetTabBarController: UITabBarController, UITabBarControllerDelegate{

override func viewDidLoad() {
    super.viewDidLoad()        
    self.tabBar.tintColor = Style.colorRed
}

我希望这对你也有用。

【讨论】:

  • 从用户代码中设置色调真的很有效,非常感谢。
  • 您可以在 Interface Builder 中执行此操作,方法是选择标签栏本身,然后转到属性检查器的“标签栏”(顶部)部分并设置“图像色调”颜色。我假设当您将选项卡栏项目置于“选定”状态时,控件会反转图形的 Alpha 通道并让底层选项卡栏的颜色显示出来。如果该颜色清晰或与您的标签栏项目的背景完全匹配...您什么也看不到。
【解决方案2】:

tabbarController scene 中选择您的tabbar 并在view 下设置一些tintColor,然后检查它是否有效!

【讨论】:

  • 不幸的是,这没有帮助。虽然 Icon 在 XCode 的设计器中获得了新的 tint 颜色,但它在运行的应用程序中仍然不可见。
【解决方案3】:

您无需设置自定义标签栏控制器。这里的问题是缺少文档(为此我向 Apple 提交了错误报告并鼓励您这样做)。

您可以在 Interface Builder 中解决此问题,方法是选择标签栏本身,然后转到属性检查器的“标签栏”(顶部)部分并设置“图像色调”颜色。我假设当标签栏项目进入“选定”状态时,控件会反转图形的 alpha 通道并让底层标签栏的颜色显示出来。如果该颜色“清晰”或与您的标签栏项目的背景完全匹配......您什么也看不到。如果您有深色背景,请尝试将此值设置为白色。

标签栏项目的图形仅使用其 alpha(非透明)像素作为黑白图像显示。然后,这些像素将允许底层标签栏的“色调”显示或不显示,具体取决于未选择/选择状态。

【讨论】:

    【解决方案4】:

    我知道这是一个老问题,但我在 Xcode 9 中遇到了同样的问题,最终在没有一行代码的情况下解决了它。转到 Attributes Inspector 并使 Tab Bar Item Selected Image 与 Bar Item Image 匹配...

    【讨论】:

      猜你喜欢
      • 2014-10-03
      • 2015-07-07
      • 2018-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-14
      • 1970-01-01
      相关资源
      最近更新 更多