2016-02-11 45 views
0

我的代碼有什麼問題?我成功地拍攝了這張照片,但第二項活動並未開始。我想把我的形象傳遞給第二項活動。將相機圖像傳遞給另一個活動,沒有任何反應

public class MainActivity extends Activity { 

    private static final int CAMERA_REQUEST = 1888; 
    private Button buttonka; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     buttonka = (Button) findViewById(R.id.button); 
     { 
     buttonka.setOnClickListener(new View.OnClickListener() { 
      public void onClick (View v){ 
       switch (v.getId()) { 
        case R.id.button: 
         Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
         startActivityForResult(cameraIntent, CAMERA_REQUEST); 
         break; 
       } 
      } 
     }); 
    }} 

    protected void onActivityResult(int requestCode, int resultCode, Intent data, Uri mCapturedImageURI) { 
     super.onActivityResult(requestCode, resultCode, data); 
     if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) { 
      Bitmap bitmapImage = (Bitmap) getIntent().getExtras().get("data"); 
      Intent camintent = new Intent(MainActivity.this, Main2Activity.class); 
      camintent.putExtra("bitmap", bitmapImage); 
      startActivity(camintent); 
     } 
    } 
} 

接收機活動:

public class Main2Activity extends AppCompatActivity { 

    private ImageView image; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main2); 
     getData(); 
    } 

    private void getData() { 

     Bitmap bitImage = getIntent().getParcelableExtra("bitmap"); 
     image.setImageBitmap(bitImage); 

    } 
} 

不知何故應用不反應,不啓動第二活性,我可能錯過了什麼?希望有人能幫忙,謝謝!

回答

1

在您的onActivityResult-使用data.getExtras().get("data"),而不是getIntent。您不希望用於啓動應用程序的意圖,您希望返回的結果。

+0

位圖bitmapImage =(位圖)data.getExtras(「data」); 意圖無法應用java.lang.String –

+0

對不起,忘了額外獲得 –

+0

沒問題,我執行了你給我的代碼,但是應用程序在拍攝照片後仍然不能正常工作,應用程序讓我回到主體活動,它看起來像onactivityresult以某種方式不啓動 –

0

我創建瞭解決方案,忘記添加相機並在清單文件中寫入存儲權限。如果有人遇到這樣的問題,請確保您寫入正確的權限! :) +刪除未使用的Uri mCapturedImageURI)

相關問題