正在查看: 微商客 v2.1.2 应用的 CropPicActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 微商客 v2.1.2 应用的 CropPicActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.jianzhen.wsk.ui.cutpic;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.XXPermissions;
import com.jianzhen.wsk.BaseActivity;
import com.jianzhen.wsk.R;
import com.jianzhen.wsk.dialog.XcDialog;
import com.jianzhen.wsk.utils.GlideEngine;
import com.jianzhen.wsk.utils.Utils;
import com.kongzue.dialogx.dialogs.PopNotification;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.entity.LocalMedia;
import com.luck.picture.lib.interfaces.OnResultCallbackListener;
import com.yalantis.ucrop.slicer.SlicerListener;
import com.yalantis.ucrop.slicer.SlicerView;
import java.util.ArrayList;
import java.util.List;
public class CropPicActivity extends BaseActivity implements View.OnClickListener {
private static final String KEY = "key";
private ImageView addImg;
private PopNotification mPopNotification;
private View picFour;
private View picNine;
private View picSix;
private View picThree;
private View picTwo;
private SlicerListener slicerListener = new SlicerListener() {
public void onSuccess(List<String> list) {
Intent intent = new Intent((Context) CropPicActivity.this, (Class<?>) CropPicResultActivity.class);
intent.putStringArrayListExtra("paths", (ArrayList) list);
CropPicActivity.this.startActivity(intent);
CropPicActivity.this.finish();
}
public void onFail(String str) {
Log.e("JuanTop", "onFail: msg:" + str);
}
};
private SlicerView slicerView;
private Uri uri;
@Override
protected int getLayoutId() {
return R.layout.activity_crop_pic;
}
@Override
protected boolean isSetBaseTitle() {
return true;
}
public static void start(Activity activity, Uri uri, int i) {
Intent intent = new Intent(activity, (Class<?>) CropPicActivity.class);
intent.putExtra(KEY, uri);
activity.startActivityForResult(intent, i);
}
@Override
protected void initTitle() {
setBaseTitle(this, "九宫格切图");
}
@Override
protected void initPageView() {
findViewById(R.id.finish_tv).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
CropPicActivity.this.slicerView.slicer();
}
});
this.addImg = (ImageView) findViewById(R.id.add_img);
this.slicerView = findViewById(R.id.slicer_view);
this.picTwo = findViewById(R.id.pic_two);
this.picThree = findViewById(R.id.pic_three);
this.picFour = findViewById(R.id.pic_four);
this.picSix = findViewById(R.id.pic_six);
this.picNine = findViewById(R.id.pic_nine);
this.picTwo.setOnClickListener(this);
this.picThree.setOnClickListener(this);
this.picFour.setOnClickListener(this);
this.picSix.setOnClickListener(this);
this.picNine.setOnClickListener(this);
this.addImg.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
CropPicActivity.this.lambda$initPageView$0(view);
}
});
}
public void lambda$initPageView$0(View view) {
if (Build.VERSION.SDK_INT >= 30) {
if (!Environment.isExternalStorageManager()) {
new XcDialog(this, new XcDialog.Callback() {
@Override
public void onLogout() {
Intent intent = new Intent("android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION");
intent.setData(Uri.parse("package:" + CropPicActivity.this.getPackageName()));
CropPicActivity.this.startActivityForResult(intent, 2);
}
}).show();
return;
}
if (!Utils.isImgPermission(this)) {
PopNotification build = PopNotification.build();
this.mPopNotification = build;
build.setTitle("相机和存储权限使用说明:").setMessage("用于拍摄、储存照片以及在相册中浏览查看照片").noAutoDismiss().show();
}
XXPermissions.with((Context) this).permission(Utils.imgPermission(this)).request(new OnPermissionCallback() {
@Override
public void onGranted(List<String> list, boolean z) {
CropPicActivity.this.imgSelect();
if (CropPicActivity.this.mPopNotification != null) {
CropPicActivity.this.mPopNotification.dismiss();
}
}
@Override
public void onDenied(List<String> list, boolean z) {
if (CropPicActivity.this.mPopNotification != null) {
CropPicActivity.this.mPopNotification.dismiss();
}
}
});
return;
}
if (!Utils.isCameraPermission(this)) {
PopNotification build2 = PopNotification.build();
this.mPopNotification = build2;
build2.setTitle("相机和存储权限使用说明:").setMessage("用于拍摄、储存照片以及在相册中浏览查看照片").noAutoDismiss().show();
}
XXPermissions.with((Context) this).permission(Utils.cameraPermission(this)).request(new OnPermissionCallback() {
@Override
public void onGranted(List<String> list, boolean z) {
CropPicActivity.this.imgSelect();
if (CropPicActivity.this.mPopNotification != null) {
CropPicActivity.this.mPopNotification.dismiss();
}
}
@Override
public void onDenied(List<String> list, boolean z) {
if (CropPicActivity.this.mPopNotification != null) {
CropPicActivity.this.mPopNotification.dismiss();
}
}
});
}
public void imgSelect() {
PictureSelector.create(this).openGallery(SelectMimeType.ofImage()).setMaxSelectNum(1).setMinSelectNum(1).setImageEngine(GlideEngine.createGlideEngine()).setSelectorUIStyle(Utils.selectorStyle()).forResult(new OnResultCallbackListener<LocalMedia>() {
public void onCancel() {
}
public void onResult(ArrayList<LocalMedia> arrayList) {
CropPicActivity.this.addImg.setVisibility(8);
CropPicActivity.this.uri = Uri.parse(arrayList.get(0).getPath());
CropPicActivity.this.updatePicNum(2);
}
});
}
public void updatePicNum(int i) {
this.picTwo.setSelected(false);
this.picThree.setSelected(false);
this.picFour.setSelected(false);
this.picSix.setSelected(false);
this.picNine.setSelected(false);
if (i == 2) {
this.picTwo.setSelected(true);
} else if (i == 3) {
this.picThree.setSelected(true);
} else if (i == 4) {
this.picFour.setSelected(true);
} else if (i == 6) {
this.picSix.setSelected(true);
} else {
this.picNine.setSelected(true);
}
this.slicerView.setSlicerNum(i);
this.slicerView.setImageView(this.uri, this.slicerListener);
}
protected void onStop() {
super.onStop();
this.slicerView.onStop();
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.pic_four:
updatePicNum(4);
break;
case R.id.pic_nine:
updatePicNum(9);
break;
case R.id.pic_six:
updatePicNum(6);
break;
case R.id.pic_three:
updatePicNum(3);
break;
case R.id.pic_two:
updatePicNum(2);
break;
}
}
}