Swift 应用程序,Xcode 14.2。目标 16.2。我的故事板中有 UIButton,其属性为“类型:自定义,样式:默认”。如果我从 .xcassets 文件设置图像,则在预览时一切正常,在模拟器上也是如此。但如果我在真实设备上测试它,图像是不可见的(没有图像)。如果在产品的“编辑方案”中取消选中“调试可执行文件”,则可以在模拟器上重现相同的情况。在每个视图控制器中都有同样的问题,所以我认为这是应用程序级别上的全局问题。
我的项目是另一个旧项目的副本。可能是某些应用程序设置不同或其他原因。可能有人知道正确的方法,我应该在哪里搜索。
有趣的时刻,如果我创建新的空应用程序,只需复制具有所有属性的按钮,一切正常 - 按钮与图像正确显示。
在真实设备上运行应用程序时,可能有多种原因导致 UIButton 不出现,
我相信这会帮助您解决问题。
解决方案成立。只需要删除 UIButton 的扩展即可:
extension UIButton {
open override func layoutSubviews() {
super.layoutSubviews()
}}
它在IOS 13上可以正常工作,但在最新版本上有一些错误。