加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何防止React Native中的静态图像在iOS上异步地进行口吃/加载

发布时间:2020-12-15 20:55:24 所属栏目:百科 来源:网络整理
导读:我无法在React Native中获取图像以便按我的意愿工作。 因为RN中的图像是在一个单独的线程中本地解码的,所以在每个单独的图像加载后,React Native会在不同的时间显示我的组件(背景图像,手柄,旋钮,滑块)中使用的图像 – 而不是显示整个组件什么时候准备好
我无法在React Native中获取图像以便按我的意愿工作。

因为RN中的图像是在一个单独的线程中本地解码的,所以在每个单独的图像加载后,React Native会在不同的时间显示我的组件(背景图像,手柄,旋钮,滑块)中使用的图像 – 而不是显示整个组件什么时候准备好了。

我正在使用require方法来渲染图像:

<Image source={require('./component-bg.png')} />
<Image source={require('./handle.png')} />
<Image source={require('./track.png')} />

如果加载几乎是立即的,那么这种异步加载是可以接受的。但即使是小图像似乎也在缓慢加载。这导致UI感觉非常不专业,直到所有图像都已加载给定组件。

有没有办法加快图像加载?包装UIImageView会更快(在XCode iOS项目中显示图像似乎是即时的)。 ‘uri’可以更快地在XCode中引用手动捆绑的图像吗?
它对我来说并没有多大意义,为什么React Native在渲染图像方面要比普通iOS应用程序慢得多。
此外,当我创建了一个组件的多个动态实例时 – 每次创建一个新组件时,图像似乎必须再次加载。

手动跟踪图像加载状态

当然,我可以手动跟踪每个单独图像的加载事件,并让组件的容器视图的不透明度从0开始,然后在加载图像时动画最多为1。但对于这样的事情来说,这似乎过于复杂。

在构建生产和开发时,图像的加载方式不同。在开发过程中,图像将通过HTTP从打包服务器提供,而在生产中,它们将与应用程序捆绑在一起。尝试在设备上进行生产构建,看看它实际上是一个问题还是只是一个开发模式的副作用。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读