WKInterfaceImage 无法更新图片的问题

最近涉及到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对象,但是很遗憾,我这里一旦发现缓存中有图片,再赋值的时候,图片就无法更新了,好奇怪。。。。。欢迎大家一起讨论。

更多相关文章
  • (1)打开vc6.0,新建一个对话框程序: (2)添加一个按钮控件和一个Edit控件 (3)使用ClasWards关联Edit控件和变量值m_editShowDir (4)双击按钮控件,为按钮控件添加函数 void CTestDlg::OnSelset() { UpdateData(TRUE); C ...
  • 文/摩摩尔2014年行将结束,这一年对于"可穿戴设备"来说是异常热闹的一年,从年初CES国际消费电子展上的抢尽风头,到占据各大科技媒体的头条:从多家新创公司的积极试水,到巨头厂商的"疯狂"跟进--种种迹象表明,可穿戴设备正在成为继手机以来又一个对人类社会产生巨 ...
  • 题目: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 思路: 递归 注意,主要就是假定数组为空时结果为false,因为导致的递归之前需要判断左右子树是否为空,注意判断是否为空的条件. 代码: 如果假定数组为 ...
  • 虽说DOS命令已是昨日黄花,但我们不少时候仍需要用到DOS命令,因此Windows XP系统也还保留有"命令提示符",不过整天面对黑底白字的界面实在有些心里不爽,下面我们就不错助任何外来工具,手工打造个性的"命令提示符"吧. 第一步:先新建一个.cmd文件,文 ...
  • 微信是除QQ之外最受欢迎的手机聊天工具了,不仅可以用文字聊天,还可以通过语音聊天,非常的方便快捷.有时候我们在清理手机垃圾文件的时候,会错手把一些微信好友的文字或者语音信息给删掉了. 如果是工作上的信息往来记录丢失了,那会比较麻烦.其实微信聊了记录被删后,还是可以找回来的.今天小编就和大家分享:误删 ...
  • 在面向对象的编程中,对象同时包含数据和行为,这两者一起表示业务域的特定方面.使用对 象生成应用程序的优点之一是可以将所有数据操作封装在对象内.这样, 就使对象成为独立的单位,并增加了在其他应用程序中重用对象的可能性.但是,对象无法在孤立状态下工作.在除最不重要的应用程序之外的所有应用程序中,对 象必 ...
一周排行
  • 1.           Magic Quotes选项     PHP.INI中中有三个以magic_quotes_开头的选项   magic_quotes_gpc如果是On的话,就会自动用‘\’转义从GET,POS ...
  • 1.建议最好打开控制文件的自动备份. 2.如果没有打开控制文件的自动备份,一定注意备份的顺序,无论之前有无备份控制文件,备份全库以及归档之后,在最后一定要再次备份控制文件. 3.使用%U,或者%d%T%s%p 惟一标 ...
  • Good Morning Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/486 Descrip ...
  •   快毕业了也应该给自己定个明确的方向,对于病毒分析这方面的知识确实还是感兴趣的,这里收集了一些资料,给大家分享一下.   以下来自乌龟,略有改动   先说说硬件: 条件允许的情况下,2条不同网络运营商提供的线路,2 ...
  • 本报讯(记者张艳实习记者李龙)深陷倒闭困局的星辰急便创始人陈平昨日表示,正与两家电商和一家传统物流接触,最希望的结果是转手他人.陈平是国内快递业的元老级人物,自3月星辰急便陷入倒闭传闻以来,陈平一直努力协调各方,争取 ...
  • 其中express是服务端框架 request相当于前端的ajax请求 cheerio相当于jq     开始 首先我们先新建一个 crawler目录 执行 npm install express -g 命令 和   ...
  • 美国一家联邦地方法院7月30日开始审理美国苹果公司和韩国三星电子公司的专利诉讼案.这是苹果和三星在美国的首场陪审团庭审,此前两家公司已在多个国家"开战".此次庭审结果可能影响市场竞争格局,被美国媒 ...
  •     Eclipse 字体有两处,一处是控制台的字体,一处是主窗口.这里分别介绍控制台和主窗口字体的调节方法.     Window -> Preferences -> General -> Ap ...
  • Keypress 是一个强大的 JavaScript 库,用于捕获键盘输入.这是一个有非常特殊的功能的输入捕获库,它是很容易掌握和使用,并且不依赖第三方库.在网站开发中,经常会碰到需要处理键盘输入的场景,处理起来繁琐 ...
  • 1. Quick Sort: int partition(int A[], int p, int r) { int x = A[r]; // Pivot element int i = p - 1; // Index ...