Cat*_*ivo 32 android android-camera android-camera-intent android-activity
我试图用意图拍照.我的问题是,有时在拍照后我的活动(调用startActivityForResult)似乎被破坏,以便再次调用onCreate.
这是我点击图片浏览后拍照的代码,应替换哪个图片:
if (!getPackageManager().hasSystemFeature(
PackageManager.FEATURE_CAMERA)) {
Util.makeLongToast(R.string.lang_no_camera);
} else {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, TAKE_ITEM_PHOTO);
}
Run Code Online (Sandbox Code Playgroud)
...
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.v(TAG, "onactivityresult called");
if (requestCode == TAKE_ITEM_PHOTO) {
if (data != null) {
imageUri = data.getData();
try {
img_photo.setImageBitmap(Media.getBitmap(
getContentResolver(), imageUri));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else
Log.w(TAG, "data is null");
}
}
Run Code Online (Sandbox Code Playgroud)
所以我尝试的是拍摄照片并用它替换imageview的图像.但在某些情况下,在调用onActivityResult并且新图像丢失后调用onCreate.
非常感谢帮助.
Akr*_*ram 108
实际上,相机会导致您的活动方向发生变化,这就是您的活动被销毁和重新创建的原因.
在清单文件中添加它会阻止方向更改,并且您的活动不会被销毁和重新创建.
<activity
android:name=".YourActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:screenOrientation="portrait" >
</activity>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13873 次 |
| 最近记录: |