簡體   English   中英

ANDROID STUDIO:使用Camera API拍照->將此圖片發送到另一個活動

[英]ANDROID STUDIO: Take picture with Camera API -> Send this picture to another activity

使用Camera API拍照后,該圖片將顯示在屏幕/此活動中。 我想將覆蓋整個屏幕的圖片發送到另一個名為PictureEditor的活動。 在那里,我將添加可以編輯圖片的功能。

  // Code in MainActivity
  mCamera.takePicture(null, null, mPicture);
  Intent i = new Intent(getApplicationContext(), PictureEditor.class);
  Bitmap b = getBitmapFromView(mPreview);
  ByteArrayOutputStream bs = new ByteArrayOutputStream();
  b.compress(Bitmap.CompressFormat.PNG, 50, bs);
  i.putExtra("byteArray", bs.toByteArray());
  startActivity(i);

在PictureEditor中,我在OnCreate中有此代碼。

  // Code in PictureEditor
  if(getIntent().hasExtra("byteArray")) {
  ImageView previewThumbnail = new ImageView(this);
  Bitmap b = BitmapFactory.decodeByteArray(
               getIntent().getByteArrayExtra("byteArray"),0,getIntent().getByteArrayExtra("byteArray").length);
        previewThumbnail.setImageBitmap(b);
    }

我該怎么做才能在PictureEditor中檢索此圖片,並且該圖片是此活動在屏幕上唯一可見的東西? (將位圖解碼並在屏幕上顯示為圖像)

感謝您提供的所有幫助!

// Code in PictureEditor
  if(getIntent().hasExtra("byteArray")) {
  ImageView previewThumbnail = new ImageView(this);
  Bitmap b =(Bitmap) getIntent().getParcelableExtra("byteArray");
        previewThumbnail.setImageBitmap(b);
    }

但是,如果您在活動之間發送信息。 此信息的大小不能超過1 MB。 您必須壓縮位圖。

代替startActivity請調用startActivityForResult並在同一活動的onActivityResult回調方法中從捆綁包中獲取圖像,並將圖像傳遞給新的Activity

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM