openharmony 鸿蒙 ohos-file-AlbumPickerComponent

2025-06-16 浏览 (1)

@ohos.file.AlbumPickerComponent (Album Picker组件)

应用可以在布局中嵌入AlbumPickerComponent组件,通过此组件,应用无需申请权限,即可访问公共目录中的相册列表。

需配合PhotoPickerComponent一起使用,用户通过AlbumPickerComponent组件选择对应相册并通知PhotoPickerComponent组件刷新成对应相册的图片和视频。

说明:

该组件从API version 12开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

导入模块

import { AlbumPickerComponent, AlbumPickerOptions, AlbumInfo, photoAccessHelper, EmptyAreaClickCallback } from '@kit.MediaLibraryKit';

属性

支持通用属性

AlbumPickerComponent

AlbumPickerComponent({ albumPickerOptions?: AlbumPickerOptions, onAlbumClick?: (albumInfo: AlbumInfo) => boolean, onEmptyAreaClick?: EmptyAreaClickCallback })

应用可以在布局中嵌入AlbumPickerComponent组件,通过此组件,应用无需申请权限,即可访问公共目录中的相册列表。

装饰器类型:@Component

系统能力:SystemCapability.FileManagement.PhotoAccessHelper.Core

参数:

名称类型必填说明
albumPickerOptionsAlbumPickerOptionsAlbumPicker的配置信息。
原子化服务API:从API version 12开始,该接口支持在原子化服务中使用。
onAlbumClick(albumInfo: AlbumInfo) => boolean用户选择某个相册时产生的回调事件,将相册uri给到应用。
原子化服务API:从API version 12开始,该接口支持在原子化服务中使用。
onEmptyAreaClick13+EmptyAreaClickCallback点击相册组件空白区域时产生的回调事件,将该次点击通知给应用。
原子化服务API:从API version 13开始,该接口支持在原子化服务中使用。

AlbumPickerOptions

Album Picker配置选项。

系统能力:SystemCapability.FileManagement.PhotoAccessHelper.Core

名称类型必填说明
themeColorModePickerColorMode相册页主题颜色,包括跟随系统、浅色模式以及深色模式,默认为跟随系统。
原子化服务API:从API version 12开始,该接口支持在原子化服务中使用。
filterType13+photoAccessHelper.PhotoViewMIMETypes相册组件过滤参数,可筛选只显示图片、视频或者图片和视频。若未配置此参数,则某个具体相册中显示图片和视频类型的所有资源。
原子化服务API:从API version 13开始,该接口支持在原子化服务中使用。

EmptyAreaClickCallback13+

type EmptyAreaClickCallback = () => void

点击相册组件空白区域时产生的回调事件。

原子化服务API: 从API version 13开始,该接口支持在原子化服务中使用。

系统能力:SystemCapability.FileManagement.PhotoAccessHelper.Core

AlbumInfo

相册相关信息。

原子化服务API:从API version 12开始,该接口支持在原子化服务中使用。

系统能力:SystemCapability.FileManagement.PhotoAccessHelper.Core

名称类型必填说明
uristring相册的uri。
albumNamestring相册的名称。

示例

// xxx.ets
import { AlbumPickerComponent, AlbumPickerOptions, AlbumInfo, PickerColorMode, photoAccessHelper, EmptyAreaClickCallback } from '@kit.MediaLibraryKit';

@Entry
@Component
struct PickerDemo {
  albumPickerOptions: AlbumPickerOptions = new AlbumPickerOptions();
  private emptyAreaClickCallback: EmptyAreaClickCallback = (): void => this.onEmptyAreaClick();

  aboutToAppear() {
    this.albumPickerOptions.themeColorMode = PickerColorMode.AUTO;
    this.albumPickerOptions.filterType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_VIDEO_TYPE;
  }
  
  private onAlbumClick(albumInfo: AlbumInfo): boolean {
    if (albumInfo?.uri) {
      // 通过pickerController向PhotoPickerComponent发送消息,通知其刷新。
    }
    if (albumInfo?.albumName) {
      // 基于获取到的albumName后续逻辑处理。
    }
    return true;
  }
  
  private onEmptyAreaClick(): void {
    // 点击组件空白区域回调。
  }

  build() {
    Stack() {
      AlbumPickerComponent({
        albumPickerOptions: this.albumPickerOptions,
        onAlbumClick:(albumInfo: AlbumInfo): boolean => this.onAlbumClick(albumInfo),
        onEmptyAreaClick: this.emptyAreaClickCallback,
      }).height('100%').width('100%')
    }
  }
}

## 你可能感兴趣的鸿蒙文章

[harmony 鸿蒙Media Library Kit(媒体文件管理服务)](/blog/25m3JY) 

[harmony 鸿蒙media_access_helper_capi.h](/blog/Y2Cm0Z) 

[harmony 鸿蒙media_asset_base_capi.h](/blog/nkcUVY) 

[harmony 鸿蒙media_asset_capi.h](/blog/23kI1Z) 

[harmony 鸿蒙media_asset_change_request_capi.h](/blog/EoH7Iz) 

[harmony 鸿蒙media_asset_manager_capi.h](/blog/rmCK6A) 

[harmony 鸿蒙MediaAssetManager](/blog/RKF1BF) 

[harmony 鸿蒙MediaLibrary_RequestId](/blog/McETfU) 

[harmony 鸿蒙MediaLibrary_RequestOptions](/blog/WWVsCn) 

[harmony 鸿蒙moving_photo_capi.h](/blog/0N1FaA) 

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/51tOYa