首页 > 其他 > 详细

WKInterfaceImage 无法更新图片的问题

时间:2015-07-02 11:26:32      阅读:253      评论:0      收藏:0      [点我收藏+]

最近涉及到AppleWatch的相关项目,但有个奇怪问题无法解决,而且无法理解:

根据不同的用户操作,需要修改播放器的专辑图片。

不知道跟我的项目需求是不是有关系:我需要轮询共享空间,以拿取同步数据,是否是性能的问题?不晓得

我尝试过的方法如下:

1. WKInterfaceImage继承关系是:-> WKInterfaceObject -> NSObject,无法用UIView的一些方法来移除图片再把新的图片加进去(addSubview,removeFromSuperView)

2. 没有setNeedDisplay等相应的强制刷新方法

3. 只有setHidden方法靠点谱,但尝试后依然无效

4. 我尝试用两张不同的图片来回替换,并调用setHidden方法,依然无效

5. stackoverflow上有个问题是类似的:WKInterfaceTable中的cell里有WKInterfaceImage,在复用旧的cell的时候,发现旧图片内容没有被替换,得到的答案是:这是一个bug,已经在xcode6.2解决(天哪,我的是6.3.2,但依旧没解决啊),给出的临时解决方案是:在赋值新的图片内容之前,先赋值nil。

[self.image setImageNamed:nil];  //也可以是空字符串
[self.image setImageNamed:@"XXXX"];

但~~~我这里依旧无效。

6. 最终解决方案是:在发现需要更新图片的时候,用GCD的延迟方法来执行相关代码。但我不知道是不是由于Watch和iphone之间的同步通信效率低下导致的???

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{

});

另外:传说中WKInterfaceDevice可以存储缓存,并且可以通过key值赋值给image对象,但是很遗憾,我这里一旦发现缓存中有图片,再赋值的时候,图片就无法更新了,好奇怪。。。。。欢迎大家一起讨论。

WKInterfaceImage 无法更新图片的问题

原文:http://www.cnblogs.com/lihaiyin/p/4615234.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!