Sfoglia il codice sorgente

Update ChargingCommentActivity.java

huyuguo 4 anni fa
parent
commit
1d839ca8f3

+ 24 - 26
app/src/main/java/com/electric/chargingpile/activity/ChargingCommentActivity.java

@ -53,6 +53,7 @@ import com.electric.chargingpile.data.RObject;
53 53
import com.electric.chargingpile.util.BarColorUtil;
54 54
import com.electric.chargingpile.util.Bimp;
55 55
import com.electric.chargingpile.util.DES3;
56
import com.electric.chargingpile.util.FileUtils;
56 57
import com.electric.chargingpile.util.ImageItem;
57 58
import com.electric.chargingpile.util.ImageUtils;
58 59
import com.electric.chargingpile.util.JsonUtils;
@ -68,6 +69,10 @@ import com.electric.chargingpile.view.HongBaoResultDialog;
68 69
import com.electric.chargingpile.view.REditText;
69 70
import com.electric.chargingpile.view.RatingBarView;
70 71
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
72
import com.zhihu.matisse.Matisse;
73
import com.zhihu.matisse.MimeType;
74
import com.zhihu.matisse.engine.impl.GlideEngine;
75
import com.zhihu.matisse.internal.entity.CaptureStrategy;
71 76
import com.zhy.http.okhttp.OkHttpUtils;
72 77
import com.zhy.http.okhttp.callback.StringCallback;
73 78
import com.zhy.view.flowlayout.FlowLayout;
@ -103,7 +108,6 @@ import io.reactivex.Observer;
103 108
import io.reactivex.android.schedulers.AndroidSchedulers;
104 109
import io.reactivex.disposables.Disposable;
105 110
import io.reactivex.schedulers.Schedulers;
106
import me.iwf.photopicker.PhotoPicker;
107 111
import okhttp3.Call;
108 112
import pub.devrel.easypermissions.AfterPermissionGranted;
109 113
import pub.devrel.easypermissions.EasyPermissions;
@ -155,6 +159,7 @@ public class ChargingCommentActivity extends Activity implements View.OnClickLis
155 159
    private String isShow = "0";
156 160
    private HongBaoDialog hongBaoDialog;
157 161
    private static final int RC_ALBUM_PERM = 123;
162
    public static final int REQUEST_CODE_CHOOSE = 335;
158 163
    //输入表情前EditText中的文本
159 164
//    private String inputAfterText;
160 165
    Handler handler = new Handler() {
@ -553,16 +558,15 @@ public class ChargingCommentActivity extends Activity implements View.OnClickLis
553 558
     * 调用图库选择
554 559
     */
555 560
    private void callGallery() {
556
        Log.e(TAG, "callGallery: " + (Bimp.max - Bimp.tempSelectBitmap.size()));
557
        //调用第三方图库选择
558
        PhotoPicker.builder()
559
                .setPhotoCount(PIC_NUM - Bimp.tempSelectBitmap.size())//可选择图片数量
560
                .setShowCamera(true)//是否显示拍照按钮
561
                .setShowGif(true)//是否显示动态图
562
                .setPreviewEnabled(true)//是否可以预览
563
                .start(this, PhotoPicker.REQUEST_CODE);
564
565
561
        Matisse.from(ChargingCommentActivity.this)
562
                .choose(MimeType.of(MimeType.JPEG, MimeType.PNG, MimeType.GIF))
563
                .showSingleMediaType(true)
564
                .countable(true)
565
                .maxSelectable(PIC_NUM - Bimp.tempSelectBitmap.size())
566
                .capture(true)
567
                .captureStrategy(new CaptureStrategy(true, "com.electric.chargingpile.provider"))
568
                .imageEngine(new GlideEngine())
569
                .forResult(REQUEST_CODE_CHOOSE);
566 570
    }
567 571
568 572
    @Override
@ -572,7 +576,7 @@ public class ChargingCommentActivity extends Activity implements View.OnClickLis
572 576
            if (data != null) {
573 577
                if (requestCode == 1) {
574 578
                    //处理调用系统图库
575
                } else if (requestCode == PhotoPicker.REQUEST_CODE) {
579
                } else if (requestCode == REQUEST_CODE_CHOOSE) {
576 580
                    //异步方式插入图片
577 581
                    insertImagesSync(data);
578 582
                }
@ -590,24 +594,18 @@ public class ChargingCommentActivity extends Activity implements View.OnClickLis
590 594
        Observable.create(new ObservableOnSubscribe<String>() {
591 595
            @Override
592 596
            public void subscribe(ObservableEmitter<String> subscriber) throws Exception {
593
594 597
                try {
595
                    ArrayList<String> photos = data.getStringArrayListExtra(PhotoPicker.KEY_SELECTED_PHOTOS);
596
                    //可以同时插入多张图片
597
                    for (String imagePath : photos) {
598
599
                        Log.e(TAG, "call: imagePath " + imagePath);
600
                        Bitmap bitmap = BitmapFactory.decodeFile(imagePath);//压缩图片
601
                        if (ImageUtils.readPictureDegree(imagePath) != 0) {
602
                            bitmap = imageZoom(ImageUtils.toturn(bitmap));
603
                        } else {
604
                            bitmap = imageZoom(bitmap);
605
                        }
598
                    List<Uri> uriList = Matisse.obtainResult(data);
599
                    for (Uri uri : uriList) {
600
                        Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uri));
601
                        File file = FileUtils.from(ChargingCommentActivity.this, uri);
602
603
                        bitmap = FileUtils.rotateIfRequired(file, bitmap);
604
                        bitmap = imageZoom(bitmap);
606 605
                        ImageItem takePhoto = new ImageItem();
607 606
                        takePhoto.setBitmap(bitmap);
608
                        takePhoto.setImagePath(imagePath);
609 607
                        Bimp.tempSelectBitmap.add(takePhoto);
610
                        subscriber.onNext(imagePath);
608
                        subscriber.onNext("");
611 609
                    }
612 610
                    subscriber.onComplete();
613 611
                } catch (Exception e) {