Android:setContentView()拍照后失败

时间:2012-01-24 19:59:46

标签: android camera photo

我正在编写一个Android应用程序,让用户拍照,然后将照片用作另一个视图的背景。问题是拍摄照片后,应用程序将不会切换到新视图。 setContentView()失败,但只在我的三星Galaxy S上,而不是在模拟器中。

我有一个理论。三星正在横向拍摄照片。拍摄照片后,它会切换回纵向。我相信这是这个开关导致应用程序返回其主视图。但是,唉,我对如何解决这个问题感到茫然。

以下是一些代码:

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE, null);
intent.putExtra(MediaStore.EXTRA_OUTPUT, getImageUri());
startActivityForResult(intent, ACTIVITY_TAKE_PHOTO);


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

    if (resultCode != RESULT_OK)
        return;
    switch(requestCode) {
        case ACTIVITY_TAKE_PHOTO:
            setContentView(R.layout.foo);
            break;
        }
    }


private Uri getImageUri() {
    File file = new File(Environment.getExternalStorageDirectory() + "/DCIM", CAPTURE_TITLE);
    Uri imgUri = Uri.fromFile(file);
    return imgUri;
    }

0 个答案:

没有答案