湖北专业网站建设质量保障,聊城网站托管,安卓ui用什么软件设计,医院网站建设合同范本前言 在之前的时候#xff0c;测试一个应用进入相册选择图片demo#xff0c;利用了startAbilityForResult()方法#xff0c;启动相对应的Ability来完成效果#xff0c;但是这种方法有限制#xff0c;一次只能获取一张图片#xff0c;在完成某些功能测试的时候就很不方便。…前言 在之前的时候测试一个应用进入相册选择图片demo利用了startAbilityForResult()方法启动相对应的Ability来完成效果但是这种方法有限制一次只能获取一张图片在完成某些功能测试的时候就很不方便。后来官方文档更新后我发现一种比较方便的接口来完成这一功能。那就是利用 ohos.file.picker (选择器)直接完成对相册里面图片的选择和多选。
正文 选择器(Picker)是一个封装PhotoViewPicker、DocumentViewPicker、AudioViewPicker等系统应用选择与保存能力的模块。应用可以自行选择使用哪种picker实现文件选择和文件保存的功能。 导入
import picker from ohos.file.picker;
PhotoViewPicker 图库选择器对象用来支撑选择图片/视频和保存图片/视频等用户场景。在使用前需要先创建PhotoViewPicker实例。
相关属性 select() 通过选择模式拉起photoPicker界面用户可以选择一个或多个图片/视频。接口采用promise异步返回形式传入可选参数PhotoSelectOptions对象返回PhotoSelectResult对象。 save() 通过保存模式拉起photoPicker界面用户可以保存一个或多个图片/视频。接口采用callback异步返回形式返回保存文件的uri数组。 代码
import common from ohos.app.ability.common;
import picker from ohos.file.picker;Entry
Component
struct pickerDemo {State getImg: string 获取图片State imgArr: string[] []getPhotoImg() {let photoPicker new picker.PhotoViewPicker();photoPicker.select({MIMEType:picker.PhotoViewMIMETypes.IMAGE_TYPE,maxSelectNumber:3},(err,data){if (err) {console.info(photoPicker:err.message)return}this.imgArr data.photoUrisdata.isOriginalPhoto})}build() {Column() {ForEach(this.imgArr,(item,index:number){Row(){Image(item).width(100).height(100).borderWidth(1)}},itemitem)Button(this.getImg).margin(20).onClick(() {this.getPhotoImg()})}.width(100%).height(100%).justifyContent(FlexAlign.Center)}
}