1

カメラから画像をキャプチャしようとしています。しかし、それは null Intent onActivityResult を返します。これが私のコードです

CaptureImageFromCamera.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(intent, 7);
    }
});

そしてonActivityResult

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == 7 && resultCode == RESULT_OK) {
        try {
            if(data.getData() == null) {
                bitmap = (Bitmap)data.getExtras().get("data");
            } else {
                bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), data.getData());
            }

            ImageViewHolder.setImageBitmap(bitmap);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

私はAndroidが初めてなので、答えを詳しく説明してください。前もって感謝します..!

4

4 に答える 4

1

これを介して意図を渡すことにより、作業を開始します。

startActivityForResult(new Intent(MediaStore.ACTION_IMAGE_CAPTURE), 100);

したがって、カメラから画像をキャプチャした後、インテントを通じて画像に関するデータを取得するために使用します。

 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
     Uri yourCapturedImage = intent.getData();
 }
于 2017-07-15T06:09:48.650 に答える