Ios WatchKit有时不加载图像

Ios WatchKit有时不加载图像,ios,watchkit,Ios,Watchkit,我的界面中有许多图像,一些只是用作信息反馈,另一些则作为按钮的一部分 使用代码在界面中更新信息反馈图像。作为按钮一部分的图像具有在Xcode中定义的图像选择,它们永远不会更改 许多用户向我发送了显示屏幕的图像,其中没有任何按钮有图像(即它们是空白的)。但是按钮仍然可以工作 这种情况不会发生在所有用户身上,它完全按照模拟器中的设计工作 所有图像都存储在WatchKit应用程序中,因此没有显式缓存,因为这是不必要的。所有图像均为PNG格式 是否有其他人经历过这种情况并有修复方法?如果WatchKit

我的界面中有许多图像,一些只是用作信息反馈,另一些则作为按钮的一部分

使用代码在界面中更新信息反馈图像。作为按钮一部分的图像具有在Xcode中定义的图像选择,它们永远不会更改

许多用户向我发送了显示屏幕的图像,其中没有任何按钮有图像(即它们是空白的)。但是按钮仍然可以工作

这种情况不会发生在所有用户身上,它完全按照模拟器中的设计工作

所有图像都存储在WatchKit应用程序中,因此没有显式缓存,因为这是不必要的。所有图像均为PNG格式


是否有其他人经历过这种情况并有修复方法?

如果WatchKit应用程序中的图像文件“松散”(即不在资产目录中),请确保文件名中有“@2x”后缀。许多开发人员都报告过这样的问题:松散的图像显示在模拟器中,而不是在实际硬件上

我强烈建议您在WatchKit应用程序(而非扩展)中创建一个包含所有手表资产的资产目录。确保在inspector面板中将每个图像设置为“特定于设备”,并且“Apple Watch”是唯一选中的选项。使用这种技术,实际的文件名并不重要


我刚刚碰巧写了一篇文章,其中包含了可能对您有用的其他细节:

是名为
UIImages
的手表套件图像吗?它们是WKInterfaceImage对象。动态更改的是使用setImageNamed方法完成的,这似乎总是有效的。对于某些用户,使用XCode中的检查器设置的图像不会显示。所有图像都存储在捆绑包中,并以所有分辨率(1x、2x和3x)进行定义。我发现,
setImageNamed
显示的图像有时也不起作用。我完全同意大多数人都会错过这一个。我的所有资产都已存储在捆绑包中,并标记为特定于设备。一个区别是,它们存储在2x而不是特定于型号的插槽中。奇怪的是,其他动态分配的映像都能100%工作。