HarmonyOS photoViewPicker传入RecommendationType不生效

按照官方API说明,在使用PhotoViewPicker时传入RecommendationType,如二维码类型,未在相册中对二维码图片进行筛选。

HarmonyOS
2024-12-25 16:40:59
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

请试下这个demo,在浏览器下了两个二维码,直接拉起picker后,可以成功跳到了二维码分类的图库:

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

@Entry
@Component
struct ListExample {
  private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  /**
   * 选择图片/视频
   * @param maxSelectNumber 选择媒体文件的最大数目
   * @param MIMEType 可选择的媒体文件类型
   * @returns
   */
  public selectPhoto(maxSelectNumber?: number, MIMEType?: picker.PhotoViewMIMETypes): Promise<Array<string>>{
    return new Promise((resolve, reject) => {
      let recommendationOptions: photoAccessHelper.RecommendationOptions = {
        recommendationType: photoAccessHelper.RecommendationType.QR_CODE // 配置枚举类型,不同的枚举值,推荐不同种类的图片
      };
      let photoSelectOptions = new photoAccessHelper.PhotoSelectOptions
      photoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE;
      photoSelectOptions.maxSelectNumber = maxSelectNumber || 1;
      photoSelectOptions.recommendationOptions = recommendationOptions
      const photoViewPicker = new photoAccessHelper.PhotoViewPicker();
      photoViewPicker.select(photoSelectOptions).then(async (photoSelectResult: picker.PhotoSelectResult) => {
        const selectUris = photoSelectResult.photoUris;
        const base64List: Array<string> = [];
      }).catch((err: BusinessError) => {
        console.error(JSON.stringify(err))
        reject(err)
      })
    })
  }
  build() {
    Column() {
      Button("选择").onClick(() => {
        this.selectPhoto()
      })
    }
    .width('100%')
    .height('100%')
    .backgroundColor(0xDCDCDC)
    .padding({ top: 5 })
  }
}
分享
微博
QQ
微信
回复
2024-12-25 19:27:16
相关问题
HarmonyOS photoViewPicker智能推荐生效
546浏览 • 1回复 待解决
HarmonyOS margin生效
838浏览 • 1回复 待解决
HarmonyOS expandSafeArea生效
626浏览 • 1回复 待解决
getContext传入this和传入有什么区别
966浏览 • 1回复 待解决
HarmonyOS @Observed生效问题
738浏览 • 1回复 待解决
HarmonyOS margin生效问题
369浏览 • 1回复 待解决
HarmonyOS targetSpace生效问题
242浏览 • 1回复 待解决
abiFilters配置生效
692浏览 • 1回复 待解决
HarmonyOS Stack 里 align生效
338浏览 • 1回复 待解决
HarmonyOS Span内边距生效
106浏览 • 1回复 待解决
HarmonyOS Web组件borderRadius生效
335浏览 • 1回复 待解决
HarmonyOS 关于onKeyEvent生效问题
677浏览 • 1回复 待解决
ConstraintSize尺寸设置生效
2631浏览 • 1回复 待解决
HarmonyOS stack设置圆角生效
352浏览 • 1回复 待解决
HarmonyOS hitTestBehavior.block生效
623浏览 • 1回复 待解决
HarmonyOS Panel 设置 borderRadius 生效
1051浏览 • 1回复 待解决
HarmonyOS 单例模式生效
137浏览 • 1回复 待解决
容器组件onVisibleAreaChange生效
2150浏览 • 1回复 待解决
HarmonyOS Badge文本颜色设置生效
497浏览 • 1回复 待解决
HarmonyOS 组件切换深色模式生效
609浏览 • 1回复 待解决
HarmonyOS 编译器配置生效
739浏览 • 1回复 待解决
HarmonyOS 枚举值条件判断生效
234浏览 • 1回复 待解决