Browse Source

问题描述修改完成

huyuguo 4 years ago
parent
commit
4b8ab939f1

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

@ -7,6 +7,7 @@ import android.content.Intent;
7 7
import android.graphics.Bitmap;
8 8
import android.graphics.BitmapFactory;
9 9
import android.graphics.Matrix;
10
import android.net.Uri;
10 11
import android.os.Bundle;
11 12
import android.os.Handler;
12 13
@ -28,6 +29,7 @@ import com.electric.chargingpile.R;
28 29
import com.electric.chargingpile.application.MainApplication;
29 30
import com.electric.chargingpile.util.AndroidBug5497Workaround;
30 31
import com.electric.chargingpile.util.BarColorUtil;
32
import com.electric.chargingpile.util.FileUtils;
31 33
import com.electric.chargingpile.util.ImageUitl;
32 34
import com.electric.chargingpile.util.JsonUtils;
33 35
import com.electric.chargingpile.util.ScreenUtils;
@ -86,6 +88,7 @@ public class EditQuestionTwoActivity extends AppCompatActivity implements View.O
86 88
    public static android.view.animation.Animation animation;
87 89
    private static final int RC_ALBUM_PERM = 123;
88 90
    public static final int REQUEST_CODE_CHOOSE = 339;
91
    private Bitmap insertBitmap;
89 92
90 93
    @Override
91 94
    protected void onCreate(Bundle savedInstanceState) {
@ -351,22 +354,18 @@ public class EditQuestionTwoActivity extends AppCompatActivity implements View.O
351 354
352 355
                try {
353 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 369
                    subscriber.onComplete();
371 370
                } catch (Exception e) {
372 371
                    e.printStackTrace();
@ -380,7 +379,8 @@ public class EditQuestionTwoActivity extends AppCompatActivity implements View.O
380 379
                    @Override
381 380
                    public void onComplete() {
382 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 386
                    @Override
@ -461,6 +461,34 @@ public class EditQuestionTwoActivity extends AppCompatActivity implements View.O
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 492
    @Override
465 493
    public void onClick(View v) {
466 494
        switch (v.getId()) {