Swift,UIButton 的图像消失了

问题描述 投票:0回答:2

Swift 应用程序,Xcode 14.2。目标 16.2。我的故事板中有 UIButton,其属性为“类型:自定义,样式:默认”。如果我从 .xcassets 文件设置图像,则在预览时一切正常,在模拟器上也是如此。但如果我在真实设备上测试它,图像是不可见的(没有图像)。如果在产品的“编辑方案”中取消选中“调试可执行文件”,则可以在模拟器上重现相同的情况。在每个视图控制器中都有同样的问题,所以我认为这是应用程序级别上的全局问题。

我的项目是另一个旧项目的副本。可能是某些应用程序设置不同或其他原因。可能有人知道正确的方法,我应该在哪里搜索。

有趣的时刻,如果我创建新的空应用程序,只需复制具有所有属性的按钮,一切正常 - 按钮与图像正确显示。

swift image uibutton
2个回答
0
投票

在真实设备上运行应用程序时,可能有多种原因导致 UIButton 不出现,

  1. 该问题可能是由图像扩展或图像损坏引起的。请先尝试在浏览器中验证图像。
  2. 检查添加的图像到正确的目标并且它包含在项目的构建阶段中。
  3. 清理构建文件夹,然后再次构建。您可以通过转到“产品”选项卡来完成此操作。
  4. 检查资产文件夹中的图像名称。
  5. 重置模拟器或设备并重建项目。

我相信这会帮助您解决问题。


0
投票

解决方案成立。只需要删除 UIButton 的扩展即可:

extension UIButton {
open override func layoutSubviews() {
    super.layoutSubviews()
  }}

它在IOS 13上可以正常工作,但在最新版本上有一些错误。

© www.soinside.com 2019 - 2024. All rights reserved.