我在用小程序提供的云开发能力开发一个实验类小程序,一个实验包含若干张图片,每个实验步骤会显示一段文字和一张图片,图片保存在云存储中,每进入一个页面就访问一次数据库得到图片Url进而将该图片显示在界面。
实际操作发现进入页面后文字和图片不能同时显示在界面上,文字秒刷新出来,但是图片总是“顿一下”才显示,虽然用时很短只感觉“顿一下”,但是实验精度要求到【毫秒级】,这种“顿一下”势必会影响实验精度和实验效果。
我想在实验进行之前将所有图片提取缓存下来,这样进入实验页面后图片加载是不是就和文字一样秒刷新出来了,我并不确定一个实验究竟包含多少图片,也不确定实验发起者上传的图片大小,请问通过缓存手段达到实验各个页面显示时图片和文字一样无卡顿感可行吗?
谢谢!
最后:实验过程中要求不能有卡顿,实验要求精确到毫秒,肉眼可见的卡顿已经影响到实验效果了。请问这类实验平台是不是不适合用小程序来开发?
这个顿一下不一定是网络下载图片卡了,所以不一定是用本地图片缓存就能解决的
有可能是手机渲染图片「顿」了。
如果是网络原因,本地缓存优化后效果好很多。
我是用缩略图模式的,比如原图2M,我缩略图后20KB,先显示缩略图,用户实在要看原图的情况下,点击缩略图看原图。
你说的顿一下个人觉得是因为图片太大的原因。缓存这么大的图片到手机一样渲染会卡。
我看PC的实验平台图片可以和文字一样“极致顺滑”显示出来,不会有任何延迟。
进入页面首先显示加载动画,配合ImgLoader图片预加载插件,等待页面渲染完成后,关闭加载动画,显示页面
个人更建议你使用 ShowLoading 从体验上优化。图片占用缓存空间终归是有限的