Przeglądaj źródła

问题描述修改完成

huyuguo 4 lat temu
rodzic
commit
4b8ab939f1

+ 45 - 17
app/src/main/java/com/electric/chargingpile/activity/EditQuestionTwoActivity.java

7
import android.graphics.Bitmap;
7
import android.graphics.Bitmap;
8
import android.graphics.BitmapFactory;
8
import android.graphics.BitmapFactory;
9
import android.graphics.Matrix;
9
import android.graphics.Matrix;
10
import android.net.Uri;
10
import android.os.Bundle;
11
import android.os.Bundle;
11
import android.os.Handler;
12
import android.os.Handler;
12
13
28
import com.electric.chargingpile.application.MainApplication;
29
import com.electric.chargingpile.application.MainApplication;
29
import com.electric.chargingpile.util.AndroidBug5497Workaround;
30
import com.electric.chargingpile.util.AndroidBug5497Workaround;
30
import com.electric.chargingpile.util.BarColorUtil;
31
import com.electric.chargingpile.util.BarColorUtil;
32
import com.electric.chargingpile.util.FileUtils;
31
import com.electric.chargingpile.util.ImageUitl;
33
import com.electric.chargingpile.util.ImageUitl;
32
import com.electric.chargingpile.util.JsonUtils;
34
import com.electric.chargingpile.util.JsonUtils;
33
import com.electric.chargingpile.util.ScreenUtils;
35
import com.electric.chargingpile.util.ScreenUtils;
86
    public static android.view.animation.Animation animation;
88
    public static android.view.animation.Animation animation;
87
    private static final int RC_ALBUM_PERM = 123;
89
    private static final int RC_ALBUM_PERM = 123;
88
    public static final int REQUEST_CODE_CHOOSE = 339;
90
    public static final int REQUEST_CODE_CHOOSE = 339;
91
    private Bitmap insertBitmap;
89
92
90
    @Override
93
    @Override
91
    protected void onCreate(Bundle savedInstanceState) {
94
    protected void onCreate(Bundle savedInstanceState) {
351
354
352
                try {
355
                try {
353
                    et_new_content.measure(0, 0);
356
                    et_new_content.measure(0, 0);
354
                    int width = ScreenUtils.getScreenWidth(EditQuestionTwoActivity.this);
355
                    int height = ScreenUtils.getScreenHeight(EditQuestionTwoActivity.this);
356
                    ArrayList<String> photos = data.getStringArrayListExtra(PhotoPicker.KEY_SELECTED_PHOTOS);
357
                    //可以同时插入多张图片
358
                    for (String imagePath : photos) {
359
                        Bitmap bitmap = ImageUitl.getSmallBitmap(imagePath, width, height);//压缩图片
360
                        if (com.electric.chargingpile.util.ImageUtils.readPictureDegree(imagePath) != 0) {
361
                            bitmap = imageZoom(com.electric.chargingpile.util.ImageUtils.toturn(bitmap));
362
                        } else {
363
                            bitmap = imageZoom(bitmap);
364
                        }
365
                        c_path = imagePath;
366
                        imagePath = SDCardUtil.saveToSdCard(bitmap);
367
                        u_path = imagePath;
368
                        subscriber.onNext(imagePath);
369
                    }
357
                    List<Uri> uriList = Matisse.obtainResult(data);
358
                    Uri uri = uriList.get(0);
359
                    Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uri));
360
                    File file = FileUtils.from(EditQuestionTwoActivity.this, uri);
361
362
                    bitmap = FileUtils.rotateIfRequired(file, bitmap);
363
                    bitmap = imageZoom(bitmap);
364
                    insertBitmap = bitmap;
365
366
                    u_path = SDCardUtil.saveToSdCard(bitmap);
367
368
                    subscriber.onNext(u_path);
370
                    subscriber.onComplete();
369
                    subscriber.onComplete();
371
                } catch (Exception e) {
370
                } catch (Exception e) {
372
                    e.printStackTrace();
371
                    e.printStackTrace();
380
                    @Override
379
                    @Override
381
                    public void onComplete() {
380
                    public void onComplete() {
382
                        insertDialog.dismiss();
381
                        insertDialog.dismiss();
383
                        compressAndUpload(c_path, u_path);
382
//                        compressAndUpload(c_path, u_path);
383
                        uploadPic(insertBitmap, u_path);
384
                    }
384
                    }
385
385
386
                    @Override
386
                    @Override
461
461
462
    }
462
    }
463
463
464
    private void uploadPic(Bitmap bitmap, final String path) {
465
        String url = MainApplication.url + "/zhannew/basic/web/index.php/fileupload/uploadone";
466
        OkHttpUtils.post().url(url).
467
                addParams("file", FileUtils.bitmapToString(bitmap)).
468
                addParams("filename", "android.jpg").
469
                addParams("id", creat_id)
470
                .build().execute(new StringCallback() {
471
            @Override
472
            public void onError(Call call, Exception e) {
473
                e.printStackTrace();
474
            }
475
476
            @Override
477
            public void onResponse(String response) {
478
                loadingDialog.dismiss();
479
                String rtnCode = JsonUtils.getKeyResult(response, "rtnCode");
480
                if ("01".equals(rtnCode)) {
481
                    String fileUrl = JsonUtils.getKeyResult(response, "fileUrl");
482
                    map.put(path, fileUrl);
483
                    et_new_content.addEditTextAtIndex(et_new_content.getLastIndex(), " ");
484
                    ToastUtil.showToast(getApplicationContext(), "图片插入成功", Toast.LENGTH_SHORT);
485
                } else {
486
                    ToastUtil.showToast(getApplicationContext(), "图片插入失败", Toast.LENGTH_SHORT);
487
                }
488
            }
489
        });
490
    }
491
464
    @Override
492
    @Override
465
    public void onClick(View v) {
493
    public void onClick(View v) {
466
        switch (v.getId()) {
494
        switch (v.getId()) {