在用户选取图片之后,选取的结果会通过组件委托中的方法返回,可以使用下面的代码创建组件委托,
// 组件委托
TuSdkComponentDelegate delegate = new TuSdkComponentDelegate()
{
@Override
public void onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment)
{
// 在这里获取所选图片
TLog.d("onAlbumMultipleComponent: %s | %s", result, error);
}
};
可以使用下面的方式获取多选相册组件的对象:
TuAlbumMultipleComponent component = TuSdkGeeV1.albumMultipleCommponent(Activity activity, TuSdkComponentDelegate delegate, int maxSelection);
albumMultipleCommponent()
方法中有三个参数,分别对应如下:
获取组件对象后,可以使用下面的方式打开组件:
// 设置在组件执行完成后自动关闭组件
comp.setAutoDismissWhenCompleted(true)
// 显示组件
.showComponent();
多选相册组件中的属性包括相册相关的属性和相机相关的属性:
comp.componentOption().albumListOption()
接口进行设置comp.componentOption().cameraOption()
接口进行设置多选相册默认会显示相机入口,可以通过下面的方式隐藏相机入口:
comp.componentOption().albumListOption().setDisplayCameraCell(false);
comp.componentOption().albumListOption().setMaxSelection(9);
comp.componentOption().albumListOption().setMaxSelectionImageSize(new TuSdkSize(8000, 8000));
comp.componentOption().albumListOption().setPhotoColumnNumber(0);
// 设置相册中照片按照添加时间或是按照修改时间排序
comp.componentOption().albumListOption().setPhotosSortDescriptor(PhotoSortDescriptor.Date_Modified);
comp.componentOption().cameraOption().setSaveToTemp(true);
comp.componentOption().cameraOption().setSaveToAlbum(true);
// 设置需要展示的相册文件夹,默认相册为Camera
comp.componentOption().albumListOption().setSkipAlbumName("lh");
多选相册中可以通过 setMaxSelection(int)
方法设置单次最大选取照片数量,如果设置为 1, 则表示使用单选模式;如果设置大于 1,表示使用多选模式。
多选相册中获取图片结果的方式在单选和多选模式下是不同的,分别说明如下:
单选模式下,选中的图片会通过设置的 TuSdkComponentDelegate
类型的委托的 onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment)
方法中返回,可以在该方法中使用 result.imageSqlInfo.path
属性获取所选图片的文件路径。
多选模式下,选中的图片会通过设置的 TuSdkComponentDelegate
类型的委托的 onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment)
方法中返回,可以在该方法中使用 result.images
属性获取所选图片列表。
©2019-2024 TUTUCLOUD. All Rights Reserved. 杭州元凡视觉智能科技有限公司 | 浙ICP备14040447号-1 | 浙公网安备33010602001649号