首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIBarButtonItem工作但在Xcode11和Xcode12中不可见

UIBarButtonItem工作但在Xcode11和Xcode12中不可见
EN

Stack Overflow用户
提问于 2020-10-13 08:53:54
回答 2查看 477关注 0票数 1

在将我们的应用程序从Xcode12迁移到Xcode10之后,我们的UIBarButtonItems出现了问题。其中一些是看不见的,但仍然有效。

我们能够更具体地针对以下方面:

  • IOS12上的Xcode10.3 :没有问题
  • 通过发布在iOS13上使用Xcode10.3 :没有问题
  • 通过发布在iOS14上使用Xcode10.3 :没有问题
  • IOS12上的Xcode11.7 :没有问题
  • IOS13上的Xcode11.7 :问题在那里
  • IOS12上的Xcode12.0.1 :没有问题
  • IOS13上的Xcode12.0.1 :问题在那里
  • IOS14上的Xcode12.0.1 :问题在那里
  • 问题出现在调试和发行版中。
  • 当我们从Xcode运行应用程序时,不会出现问题
  • 只有当我们退出应用程序并直接从设备上启动它时,才会出现问题。
  • 仅当UIBarButtonItem是具有图标的系统项时才会出现问题,例如:刷新、添加、.
  • UIBarButtonItem是带有文本的系统项,例如:编辑、关闭、.
  • 没有出现问题,因为UIBarButtonItem是自定义的,有来自资产的图像
  • 如果我以编程方式执行UIBarButtonItem系统,也会出现问题。

当查看“层次视图”时,项目及其图标就在那里,但没有显示在设备上。我们看不出任何不同的项目时,是否显示,这可能有助于理解问题。

下面的截图是:

  1. 故事板
  2. 从图标启动后在iPad上发布
  3. 查看问题的层次结构

更多截图(比较)可在这里获得:https://imgur.com/a/7Dcyvir

有没有可能有人在Xcode11或Xcode12上看到过类似的行为?知道我们可以尝试什么吗?或者它是否是一个需要报告的Xcode问题?

提前感谢您的帮助!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-20 11:49:25

我们无法从零开始在另一个应用程序中复制。因此,我们添加了相反的方法:去掉当前的应用程序,直到问题不再出现为止。第一步是只删除一个AppDelegate和一段简单的代码,但问题仍然存在。我们从cocoapods中删除了所有依赖项,但问题仍然存在。我们最终删除了一个直接添加到项目中的框架,它就是罪魁祸首!

该框架是BiometricSDK (来自IDEMIA)。我们将向他们发送一封邮件,以了解他们是否意识到了这个问题,以及他们是否在更新的版本中修复了这个问题。它不是开源的,所以我不知道具体的问题是什么,我唯一的猜测是他们以某种方式改变了UIBarButtonItems的外观(但我不知道他们的代码是如何被调用的,因为我们删除了对它的任何引用,同时删除了应用程序)。

票数 2
EN

Stack Overflow用户

发布于 2021-02-10 18:36:47

当您将UIBarButtonItem的标题文本属性UIColor.clear设置为UIColor.clear时,可能会出现此问题。

你可以直接做这件事。

代码语言:javascript
复制
navigationItem.rightBarButtonItem?.setTitleTextAttributes([.foregroundColor: UIColor.clear], for: .normal)

或通过修改UIBarButtonItem的外观(如:

代码语言:javascript
复制
UIBarButtonItem.appearance().setTitleTextAttributes([NSAttributedString.Key.foregroundColor: UIColor.clear], for: .normal)

检查您的代码,也许您有这样的设置某处。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64331879

复制
相关文章

相似问题

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