Android-推荐一个图片裁剪库(uCrop)

图片来源网络,入侵必删

在日常的Android开发当中,在上传头像的需求的时候,我们会遇到图片裁剪的需求。这里分享一个常见的图片裁剪库——uCrop

uCrop

一个Android常见的图片裁剪库。

导入项目

build.gradle项目加入:

allprojects {
   repositories {
      jcenter()
      maven { url "https://jitpack.io" }
   }
}

appbuild.gradle加入,轻量级别:

implementation 'com.github.yalantis:ucrop:2.2.6'

完整的版本,会增加apk大小大约1.5MB

implementation 'com.github.yalantis:ucrop:2.2.6-native'

截止我发布博客的时候,开源库的版本是2.2.6最新版本请看开源库的wiki

简单使用

1.在AndroidManifest.xmlUCropActivity加入:

<activity
    android:name="com.yalantis.ucrop.UCropActivity"
    android:screenOrientation="portrait"
    android:theme="@style/Theme.AppCompat.Light.NoActionBar"/>

2.uCrop配置代码:

UCrop.of(sourceUri, destinationUri)
    .withAspectRatio(16, 9)
    .withMaxResultSize(maxWidth, maxHeight)
    .start(context);

3.在页面的onActivityResult获取处理结果:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode == RESULT_OK && requestCode == UCrop.REQUEST_CROP) {
        final Uri resultUri = UCrop.getOutput(data);
    } else if (resultCode == UCrop.RESULT_ERROR) {
        final Throwable cropError = UCrop.getError(data);
    }
}

混淆代码

-dontwarn com.yalantis.ucrop**
-keep class com.yalantis.ucrop** { *; }
-keep interface com.yalantis.ucrop** { *; }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容