HarmonyOS 图库选择器

是否有图片选择器提供,如何实现,需要拍照和选择图片功能

HarmonyOS
2024-12-27 17:20:00
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

可以参考以下demo

import { picker } from '@kit.CoreFileKit';
import photoAccessHelper from '@ohos.file.photoAccessHelper';
import { BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
struct Index9 {
  @State selectedUri: string = '';

  choosePhoto() {
    try {
      let PhotoSelectOptions = new photoAccessHelper.PhotoSelectOptions();
      PhotoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE;
      PhotoSelectOptions.maxSelectNumber = 5;
      PhotoSelectOptions.isEditSupported = true;
      PhotoSelectOptions.isPhotoTakingSupported = true;
      let photoPicker = new picker.PhotoViewPicker()
      let uris: Array<string> = [];
      photoPicker.select(PhotoSelectOptions).then((PhotoSelectResult: photoAccessHelper.PhotoSelectResult) => {
        console.info('PhotoViewPicker.select successfully, PhotoSelectResult uri: ' + JSON.stringify(PhotoSelectResult));
        uris = PhotoSelectResult.photoUris;
        this.selectedUri = uris[0];
      }).catch((err: BusinessError) => {
        console.error(`PhotoViewPicker.select failed with err: ${err.code}, ${err.message}`);
      });
    } catch (error) {
      let err: BusinessError = error as BusinessError;
      console.error(`PhotoViewPicker failed with err: ${err.code}, ${err.message}`);
    }
  }

  build() {
    Row() {
      Column({ space: 30 }) {
        Button('选择图片')
          .width(200)
          .height(30)
          .onClick(() => {
            this.choosePhoto()
          })
        Image(this.selectedUri)
          .width('95%')
          .height(400)
          .padding({top:'30xp'})
      }
      .width('100%')
      .height('100%')
    }
    .height('100%')
  }
}

基于以上demo,如适用拍照属性和回显功能,推荐使用相册管理模块创建photoPicker,

参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-photoaccesshelper-V5#photoviewpicker

let photoPicker = new photoAccessHelper.PhotoViewPicker();

其中PhotoSelectOptions中提供preselectedUris接口,表示预选择图片的uri数据。

分享
微博
QQ
微信
回复
2024-12-27 19:17:11
相关问题
HarmonyOS web如何拉起图库选择器
532浏览 • 1回复 待解决
HarmonyOS 本地图库选择器并编辑图片
367浏览 • 1回复 待解决
HarmonyOS 图片选择器怎么实现
418浏览 • 1回复 待解决
HarmonyOS 有状态选择器
359浏览 • 1回复 待解决
HarmonyOS 日期/日历/时间选择器开发
1087浏览 • 1回复 待解决
HarmonyOS 地区选择器多级列表效果
763浏览 • 1回复 待解决
HarmonyOS图片选择器相关的问题
900浏览 • 1回复 待解决
HarmonyOS 如何自定义时间选择器
425浏览 • 1回复 待解决
HarmonyOS picker选择器的数据源问题
399浏览 • 1回复 待解决
TimePicker如何设置时间选择器的范围?
7398浏览 • 1回复 待解决
自定义日期滑动选择器弹窗
703浏览 • 1回复 待解决
鸿蒙可以实现状态选择器吗?
6589浏览 • 1回复 已解决