当我使用图像缓存时,“无法在手表上找到名为XXX的图像”

时间:2015-05-04 19:03:20

标签: watchkit apple-watch

我使用- (BOOL)addCachedImage:(UIImage *)image name:(NSString *)name WKInterfaceDevice API来存储图片。

问题在于,大多数情况下,当我尝试在setImageNamed:上使用WKInterfaceImage来使用这些缓存的图片时,我收到此Unable to find image named XXX on watch错误,导致出现空图像屏幕。 我坚持认为这不会一直发生。

这在模拟器和设备上都会发生。

3 个答案:

答案 0 :(得分:4)

转到XCode左侧边栏的Project Navigator中的Assets.xcassets

选择未找到的图像。

对我来说,只要我将图像放在“2x”占位符中就行了。

如果您只是导入图像,它们将被放置在1x点,但Apple手表似乎至少需要2倍的分辨率。只需优化您的图像,它就可以无缝地工作。

答案 1 :(得分:2)

我发现图片名称太长(字符数> 255)会导致错误。一旦用于缓存图像的图像名称更短,我就不再收到错误了。

答案 2 :(得分:1)

似乎是一个Xcode错误,我在Xcode 7 beta 4中遇到了这个问题,但在测试版2中没有。我研究并试验了很多东西,包括各种建议,事实证明,如果图像设置在Universal,它们不是被拾起(http://iphone.tagsstack.com/unable_to_find_image_named_ldquo_xxrdquo_on_iwatch_error)。但是,如果您为每个手表大小单独选择它们,它们将显示并且问题已解决。