本文原创发布在华为开发者社区。
介绍
本示例基于PhotoViewPicker能力实现智能推荐符合设定条件的图片的功能,缩短用户筛选图片的时间。
效果预览
使用说明
点击“二维码图片”按钮,应用在拉起图库时会自动筛选出所有二维码图片供用户选择。
实现思路
调用photoAccessHelper接口的RecommendationType方法将推荐的图片类型设置为二维码,调用PhotoViewMIMETypes方法将拉起图库时的选择项设置为图片,调用PhotoSelectResult返回选择后的结果集。如果图库中包含符合设定参数的图片即二维码,则显示二维码图片集,若不包含,则显示所有图片。核心代码如下,源码参考Index.ets
async function example() {
try {
let recommendOptions: photoAccessHelper.RecommendationOptions = {
recommendationType: photoAccessHelper.RecommendationType.QR_CODE
}
let options: photoAccessHelper.PhotoSelectOptions = {
MIMEType: photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE,
maxSelectNumber: 1,
recommendationOptions: recommendOptions
}
let photoPicker = new photoAccessHelper.PhotoViewPicker();
photoPicker.select(options).then((PhotoSelectResult: photoAccessHelper.PhotoSelectResult) => {
console.info('PhotoViewPicker.select successfully, PhotoSelectResult uri: ' + JSON.stringify(PhotoSelectResult));
}).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}`);
}
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。