没有从WatchApp Target存储UIImage

时间:2016-04-06 18:09:17

标签: ios apple-watch

我在watchApp目标中的图像资源中添加了图像,现在我正在尝试使用这些图像加载数组。但每次我得到的图像为零。 恩。在watchApp目标中的image资产中添加了A1.png,A2.png,A3.png ......     现在,尝试获取图像名称为...的图像     UIImage * img = [UIImage imageNamed:@" A1"];

But, every time I am getting nil.

1 个答案:

答案 0 :(得分:1)

问题是您已在WatchApp目标中添加了图像,并尝试通过API加载图像,该API将搜索WatchExtention捆绑包中的图像。为了理解这一点,我们需要了解如何在WatchApp和WatchExtention的包中搜索图像。

我们举一个例子,我们有WKInterfaceImageobjImage的对象。 WKInterfaceImage *objImage; 当您使用方法[objImage setImageNamed:@"abc"]时,系统会将图像名称发送给WatchApp,并在WatchApp软件包中搜索不在Extention软件包中的图像。
但是,当您在Extention target(bundle)中指定图像然后使用这些图像时,需要使用imageNamed:方法将它们传输到WatchApp目标,这将在Extention包中搜索而不是在WatchApp包中。

因此,如果您想使用imageNamed: API,则还需要在Extention目标中指定您的图片。然而,这有一些自己的开销,我建议除非必要,否则不要使用。

查看Apple Documentation:Section - Using Named Images to Improve Performance以获取详细参考。