最近涉及到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 无法更新图片的问题的更多相关文章

  1. 基于Python实现matplotlib中动态更新图片(交互式绘图)

    最近在研究动态障碍物避障算法,在Python语言进行算法仿真时需要实时显示障碍物和运动物的当前位置和轨迹,利用Anaconda的Python打包集合,在Spyder中使用Python3.5语言和mat ...

  2. 解决 viewer.js 动态更新图片导致无法预览的问题

    1.viewer.js 使用 Demo http://fengyuanchen.github.io/viewerjs/ 2.viewer.js 下载地址 https://github.com/feng ...

  3. ASP.NET MVC图片管理(更新)

    Insus.NET在ASP.NET MVC专案中,实现了图片管理,上传,预览,显示,删除等功能,还差一个功能,就是更新图片的功能,那这次来完成它.你可以先参考前2篇<ASP.NET MVC图片管 ...

  4. python tkinter GUI绘制,以及点击更新显示图片

    tkinter 绘制GUI简单明了,制作一些简单的GUI足够,目前遇到的一个问题是不能同时排列显示多幅图片(目前没找到同时显示解决方法), 退而求其次,改成增加一个update按钮,每次点下按钮自动更 ...

  5. 改变src图片不更新

    var url = response + "?r" + Math.random();[完美解决修改src不更新图片]$('#loginimage').attr("src& ...

  6. Android之仿微信图片选择器

    先上效果图.第一张图显示的是“相机”文件夹中的所有图片:通过点击多张图片可以到第二张图所示的效果(被选择的图片会变暗,同时选择按钮变亮):点击最下面的那一栏可以到第三张图所示的效果(显示手机中所有包含 ...

  7. iOS开发——高级篇——图片轮播及其无限循环效果

    平时APP中的广告位.或者滚动的新闻图片等用到的就是图片轮播这种效果,实现方式主要有两种,一种是ScrollView+ImageView,另一种则是通过CollectionView,今天总结的是Scr ...

  8. 限制Xamarin获取图片的大小

    限制Xamarin获取图片的大小在App开发中,经常会使用网络图片.因为这样不仅可以减少App的大小,还可以动态更新图片.但是手机使用网络环境千差万别.当网络环境不是理想的情况下,加载网络图片就是一个 ...

  9. 仿网易新闻 ViewPager 实现图片自动轮播

    新闻 App 首页最上方一般会循环播放热点图片,如下图所示. 本文主要介绍了利用 ViewPager 实现轮播图片,图片下方加上小圆点指示器标记当前位置,并利用 Timer+Handler 实现了自动 ...

随机推荐

  1. android sdk镜像站点

    http://android-mirror.bugly.qq.com:8080/include/usage.html Windows A. 打开Android SDK Manager  B. 设置代理 ...

  2. C# 网络与Cmd命令

    网络命令行: 1 - ping 2 - ipconfig 本机网络配置情况 3 - net 4 - arp  网络网卡物理/ip地址对应用 5 - tracert 列举数据报到达目标地所经过的网关 6 ...

  3. ASP.NET MVC分页组件MvcPager 2.0版发布暨网站全新改版

    MvcPager分页控件是在ASP.NET MVC Web应用程序中实现分页功能的一系列扩展方法,该分页控件的最初的实现方法借鉴了网上流行的部分源代码, 尤其是ScottGu的PagedList< ...

  4. 原子操作--ARM架构

    说明:内核版本号为3.10.101 一.ARM架构中的原子操作实现 在原子操作(一)中我们已经提到,各个架构组织为“复仇者”联盟,统一了基本的原子变量操作,这里我们就拿atomic_dec(v)来看看 ...

  5. Oracle数据导入导出

    Oracle数据导入导出imp/exp 在oracle安装目录下有EXP.EXE与IMP.EXE这2个文件,他们分别被用来执行数据库的导入导出.所以Oracle数据导入导出imp/exp就相当与ora ...

  6. 检查Chunksum与Chunk Data之间的缓冲区发送到DataNode节点

    我们会看到左边"iOS Apps"下面有四个选项:"Certificates"."Identifiers"."Devices&qu ...

  7. spfa判断负环

    会了spfa这么长时间竟然不会判断负环,今天刚回.. [例题]poj3259 题目大意:当农场主 John 在开垦他的农场时,他发现了许多奇怪的昆虫洞.这些昆虫洞是单向的,并且可以把你从入口送到出口, ...

  8. centos 7安装配置bind

    环境: 三台虚拟机,全部安装Centos 7, tony4.hadoop.com 192.168.31.223 tony5.hadoop.com 192.168.31.224 tony6.hadoop ...

  9. Java 反射工具类封装

    封装了常用的反射相关方法 public class ReflectUtil { /** * 通过类路径获取Class * * @author LHY <br> * Description ...

  10. SQL Server 查出未提交事务(长事务)SQL

    ),value )); INSERT INTO @tab EXEC('DBCC OPENTRAN WITH TABLERESULTS'); SELECT name,CAST(value AS DATE ...