Android:通过Android相机捕获图像时出现问题

时间:2011-12-07 16:50:08

标签: android

我在我的应用程序中使用Android的相机。使用

调用相机
Intent captureImage = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
            captureImage.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, imageFileUri);
            startActivityForResult(captureImage, CAMERA_PIC_REQUEST);

我正在追踪结果

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

问题是当我捕获图像时,我没有得到任何东西回到onActivityResult()但是如果我取消相机活动,我得到结果为-1。 这意味着我的方法正在工作,但在捕获图像后出现问题并且无法返回图像uri。

有谁能告诉我这是什么问题? 谢谢。

1 个答案:

答案 0 :(得分:0)

试试这个代码段:

public class MyCameraActivity extends Activity {
private static final int CAMERA_REQUEST = 1888; 
private ImageView imageView;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    this.imageView = (ImageView)this.findViewById(R.id.imageView1);
    Button photoButton = (Button) this.findViewById(R.id.button1);
    photoButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
            startActivityForResult(cameraIntent, CAMERA_REQUEST); 
        }
    });
}

protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
    if (requestCode == CAMERA_REQUEST) {  
        Bitmap photo = (Bitmap) data.getExtras().get("data"); 
        imageView.setImageBitmap(photo);
    }  
} 
}