0
adroidでCAMERAインテントを使用して画像を撮影し、画像ビュー内に表示しようとしています。以下のコードは、写真を撮るまでうまく動作します。それから私は "V"ボタンで確認できず、私の活動に戻ることができます。 「X」ボタンをクリックすると、アンドロイドは写真なしのアクティビティに戻りますが、「V」をクリックして画像を確認しても、何も起こりません。カメラの画面にまだ固執しています。Android camera stuck - 画像をキャッチできません
私はAPI 14を使用しており、アンドロイド4.0.2で仮想デバイスと物理デバイスをテストしています。
私の間違いはどこですか?
import java.io.File;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
public class HandScryActivity extends Activity {
private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100;
private Uri uriSavedImage;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.handscry);
// Makes the filename
File imagesFolder = new File(Environment.getExternalStorageDirectory(), "MyImages");
imagesFolder.mkdirs();
File image = new File(imagesFolder, "image_001.jpg");
uriSavedImage = Uri.fromFile(image);
}
// Handles onGame clicked buttons
public void btnHandClick(View v) {
Button clickedButton = (Button) v;
// according to clicked button
switch (clickedButton.getId()) {
case R.id.btnBackToGame:
this.finish();
break;
case R.id.btnTakePicture:
Intent imageIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
imageIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);
startActivityForResult(imageIntent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
break;
default:
break;
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
ImageView img = (ImageView) findViewById(R.id.imgHand);
if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) {
// Display image
if (resultCode == RESULT_OK) {
img.setImageURI(uriSavedImage);
} else if (resultCode == RESULT_CANCELED) {
// User cancelled the image capture
} else {
// Image capture failed, advise user
}
}
}
}