用HarmonyOS ArkUI调用三方库PhotoView实现图片的联播、缩放
创始人
2024-01-26 05:12:42
0

本文演示如果用HarmonyOS的ArkUI来调用已经上架到三方库中心的社区库。体验HarmonyOS 3最新的API 9,欢迎大家一起参与构建这个万物互联的时代!

活动主页

HarmonyOS线上Codelabs挑战赛已经开启,该系列挑战赛将围绕HarmonyOS的基础组件和容器组件、三方库和数据库等技术特性展开,开发者们可以通过体验基于HarmonyOS特性和能力的应用开发,快速构建有趣、有用的应用程序。

有兴趣的朋友一起参与吧。

活动主页:

华为开发者论坛

获取HarmonyOS应用源码

HarmonyOS的ArkUI来调用社区库的程序“ArkUIThirdPartyLibrary”,全部代码可以在《跟老卫学HarmonyOS开发》项目中找到(链接见文末“参考引用”)。有兴趣的网友可以clone该代码到本地进行运行、测试、修改。

接下来将介绍该购物应用程序“ArkUIThirdPartyLibrary”是如何实现的。

通过DevEco Studio 3创建应用

有关DevEco Studio 3的安装配置,可以参考前文《玩转HarmonyOS 3必装DevEco Studio 3,注意避弹》这里就不在赘述。

首选是打开DevEco Studio 3,可以看到如下界面。

点击“Create Project”来创建ArkUI程序“ArkUIThirdPartyLibrary”。

选择模板

选择空模板Empty Ability,点击“Next”执行下一步。

配置项目

配置项目信息,重要是以下圈中部分。其他配置按照默认配置即可。点击“Finish”执行下一步。

程序初始化完成之后,就能在该程序基础上进行代码开发、运行。

运行HarmonyOS应用

打开Device Manager

登入华为账号

点击“Sign In”登入个人注册的华为账号。如果没有,则参考本文最后的链接进行注册。

启动远程模拟器

运行应用

点击下命的三角形按钮以启动应用

应用运行效果图如下。

完善代码

在空模板的基础上,我们初步添加业务代码,来最终实现程序。

安装PhotoView组件

PhotoView是一款三方库,实现了图片缩放浏览组件,图片可缩放,平移,旋转。执行下面语句进行安装。

npm install @ohos/photoview –save复制

安装完成之后,可以看到在package.json中已经自动添加了PhotoView的依赖:

要使用PhotoView,只需要导入PhotoView的包

import {PhotoView} from '@ohos/photoview';复制

实现图片缩放

在Index页面中,添加如下代码:

import {PhotoView} from '@ohos/photoview';@Entry
@Component
struct Index {@State data: PhotoView.Model = new PhotoView.Model();@State data1: PhotoView.Model = new PhotoView.Model();@State data2: PhotoView.Model = new PhotoView.Model();private swiperController: SwiperController = new SwiperController()aboutToAppear() {this.data.setImageResource($r('app.media.harmony'))this.data1.setImageResource($r('app.media.harmony1'))this.data2.setImageResource($r('app.media.harmony2'))}build() {Column() {Swiper(this.swiperController) {PhotoView({model: this.data})PhotoView({model: this.data1})PhotoView({model: this.data2})}.index(0).autoPlay(true) // 自动播放.indicator(true) // 默认开启指示点.loop(true) // 默认开启循环播放.duration(50).vertical(true) // 默认横向切换.itemSpace(0).onChange((index: number) => {this.data.resetMatrix()this.data1.resetMatrix()this.data2.resetMatrix()console.info("ViewPager"+index.toString())})}.height('100%').width('100%').backgroundColor(0x3d3d3d)}
}
复制

上述代码实现了图片的自动播放、循环播放、横向切换等功能。其中图片资源放置在media目录下。

程序运行效果

完整演示视频见B站:【老卫搬砖】026期:用HarmonyOS ArkUI调用三方库PhotoView实现图片的联播、缩_哔哩哔哩_bilibili

相关问题

问题:@ohos/photoview not found

报错信息如下:

>npm install @ohos/photoview --savenpm ERR! code E404npm ERR! 404 Not Found - GET https://registry.npmmirror.com/@ohos%2fphotoview - [NOT_FOUND] @ohos/photoview not foundnpm ERR! 404npm ERR! 404 '@ohos/photoview@latest' is not in the npm registry.npm ERR! 404 You should bug the author to publish it (or use the name yourself!)npm ERR! 404npm ERR! 404 Note that you can also install from anpm ERR! 404 tarball, folder, http url, or git url.npm ERR! A complete log of this run can be found in:npm ERR! C:\Users\wayla\AppData\Roaming\npm-cache\_logs\2022-11-13T13_13_32_065Z-debug.log复制

解决方法:

设置npm的镜像

npm config set @ohos:registry=https://repo.harmonyos.com/npm/复制

源码

见 https://github.com/waylau/harmonyos-tutorial 中的“ArkUIThirdPartyLibrary”

参考引用

  • 《跟老卫学HarmonyOS开发》 开源免费教程,https://github.com/waylau/harmonyos-tutorial
  • 《鸿蒙 HarmonyOS 应用开发从入门到精通战》(柳伟卫著,北京大学出版社)《鸿蒙HarmonyOS应用开发从入门到精通》(柳伟卫)【摘要 书评 试读】- 京东图书、《鸿蒙HarmonyOS应用开发从入门到精通 柳伟卫著》(柳伟卫)【简介_书评_在线阅读】 - 当当图书
  • 玩转HarmonyOS 3必装DevEco Studio 3,注意避弹 华为开发者论坛
  • OpenHarmony-SIG/PhotoView

相关内容

热门资讯

加盟干洗店能赚钱吗是创业首为什... 加盟干洗店能赚钱吗是创业首选的好项目目前投资开家干洗店可以说是一个相当不错的选择它拥有着可观的市场发...
山区项目创业 山区项目创业 灞... 现在最落后的要数山区了,但是同样的,很多亟待开发的空白市场也在山区,适合山区的创业项目有哪些呢?学习...
山区农村创业 山区做什么项目挣... 比如土鸡、牛羊、土猪等。而且还可以实行散养的方式,同时由于地域广阔还不会出现禽流感和各种疫情。像现在...
湖南诺玛渔具有限公司是一家非常... 如今的渔具行业是市场上非常流行的行业,各式各样的渔具商店的出现,不仅给消费者带来了更多的渔具产品,同...
我有一个好项目 百万以下别联系... 别怪我打击你小兄弟,又一个理想主义者,你这帖子是想融资呢吧?说点儿别的吧,你还心有多大胆,地有多大产...
电商创业:助力90后姑娘创办“... 90后姑娘想法奇特,创办“月子农场”,一直鸡卖398元。让小编非常惊讶,大家都知道市场上一直鸡最多买...
第一次创业 结果如何 第一次创... VR全景是一种新型的展示宣传方式,是利用三维立体技术将线下实体店在互联网上进行720°的全景还原,全...
分享大学生创新创业项目50个小... 6月20日,教育厅公示公告了省部级在校大学生创新创业训练计划项目。根据审查考试成绩,明确朝向省属大学...
2019年令人心动的小本创业项... 小本投资创业项目虽说投资小,但如果你选择的项目没有什么利润,赚不到什么钱,那么再小的投资也是没有什么...
适宜在农村创业致富的项目有哪些... 近年来,随着国家号召并鼓励发展新型农村,许多农村地区的面貌发生了很大的变化。去城里打工,也不再是农民...