为了账号安全,请及时绑定邮箱和手机立即绑定

【App图片开发快速教程】头像设置组件的使用

标签:
Android

开启组件

设置组件委托

使用下面代码创建组件委托,并将得到的委托对象传递给获取组件对象时调用的 avatarCommponent() 方法。

 // 组件委托
 TuSdkComponentDelegate delegate = new TuSdkComponentDelegate()
 {
     @Override
     public void onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment)
     {
        TLog.d("onAvatarComponentReaded: %s | %s", result.imageFile, error);
     }
 };

获取组件对象

组件对象使用 TuSdkGeeV1 类中的 avatarCommponent() 方法获得:

avatarCommponent(Activity activity, TuSdkComponentDelegate delegate)

如下面代码所示:

  TuAvatarComponent component = TuSdkGeeV1.avatarCommponent(activity, new TuSdkComponentDelegate()
  {
        @Override
    public void onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment)
     {
        TLog.d("onAvatarComponentReaded: %s | %s", result.imageFile, error);
     }
  });

开启组件

获得组件对象之后调用该对象的 showComponent()方法可以开启组件,同时也可以设置组件执行完成后自动关闭,如下代码所示:

// 在组件执行完成后自动关闭组件
 component.setAutoDismissWhenCompleted(true)
 // 开启组件
 .showComponent();

头像组件选项配置

头像设置组件可以选择拍照或者从相册中选取图片,最后再使用裁切组件编辑图片,因此头像组件可以对以下选项进行配置:

  • 相册列表选项

  • 照片列表选项

  • 相机组件选项

  • 裁切界面控制器选项

配置相册列表选项

相册列表选项使用component.componentOption().albumListOption()来配置,比如可以用来设置打开相册后自动跳转到某一个相册中:

component.componentOption().albumListOption().setDisableAutoSkipToPhotoList(true);

配置照片列表选项

照片列表选项使用component.componentOption().photoListOption()来配置,比如可以用来设置当相册为空时默认显示的界面:

component.componentOption().photoListOption().setEmptyViewLayouId(layout_id);

配置相机组件选项

相机组件选项使用component.componentOption().cameraOption()来配置,可以配置在相机组件的使用文档中介绍的各个配置选项,比如设置拍摄的照片保存到相册:

component.componentOption().cameraOption().setSaveToAlbum(true);

配置裁切界面控制器选项

裁切界面选项使用component.componentOption().editTurnAndCutOption()来配置,比如设置编辑后的图片保存到相册:

component.componentOption().editTurnAndCutOption().setSaveToAlbum(true);

获取编辑结果

头像设置组件可以通过设置不同的属性管理编辑结果的输出方式,可以通过下面三种方式获得编辑后的结果:

  • 获取图片的 Bitmap 对象,此方式将不保存图片

  • 获取图片的存储路径,此方式会将图片保存在相册中

  • 将图片保存在临时文件中,并获取临时文件

获取编辑结果的 Bitmap 对象

需要进行如下设置:

// 是否保存到相册
component.componentOption().editTurnAndCutOption().setSaveToAlbum(false);
// 是否保存到临时文件
component.componentOption().editTurnAndCutOption().setSaveToTemp(false);

该方式将不会保存处理结果。

随后可以在所设置的组件委托中的 onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment) 方法中使用 result.image 获取图片的 Bitmap 对象。

获取编辑结果的存储路径

需要进行如下设置:

// 是否保存到相册
component.componentOption().editTurnAndCutOption().setSaveToAlbum(true);
// 是否保存到临时文件
component.componentOption().editTurnAndCutOption().setSaveToTemp(false);

该方式会将处理结果保存到相册中。

同时也可以设置

component.componentOption().editTurnAndCutOption().setSaveToAlbumName("TuSDKEdit");

将图片保存到名称为 TuSDKEdit 的相册中。

同时,此方法还可以使您获取到处理后的照片的其他属性,比如拍摄时间、文件长宽等,具体可以参看 ImageSqlInfo 类的API

随后可以在所设置的组件委托中的 onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment) 方法中使用 result.imageSqlInfo.path 获取图片路径。

获取编辑结果所在的临时文件

需要进行如下设置:

// 是否保存到相册
component.componentOption().editTurnAndCutOption().setSaveToAlbum(false);
// 是否保存到临时文件
component.componentOption().editTurnAndCutOption().setSaveToTemp(true);

该方式将会把处理结果保存到临时文件,同时也可以设置

// 自动清理临时文件
component.componentOption().editTurnAndCutOption().setAutoRemoveTemp(true);

这样在处理完成之后将会自动删除临时文件。

随后可以在所设置的组件委托中的 onComponentFinished(TuSdkResult result, Error error, TuFragment lastFragment) 方法中使用 result.imageFile 获取临时文件。

原文链接:http://www.apkbus.com/blog-918768-68565.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消