【发布时间】:2018-08-20 17:14:52
【问题描述】:
编辑:正如我所说,我读了很多,但标记为重复的问题不是同一个场景。我成功加载了 Intent 相机,但我无法保存/返回我的片段,也无法单击按钮的相机来保存它。只能回来工作。
好的,我尝试了大量代码,但找不到解决方案。我在 testbed 中尝试了我的代码并且它可以工作(使用 MainActivity 和两个简单的按钮) 现在我移动我的代码在我的应用程序中拍照;它正确启动相机意图,我可以拍照,但是当我单击应用按钮时没有附加任何内容。只有后退按钮有效。 经过大量更改代码后,我的代码如下......我只看到如果我在电话上用箭头返回,当 Intent Camera 关闭时,将调用 MainActivity 上的 onActiveResult,但显然没有数据。
如果您能指出正确的方法,请提前致谢!
在 MainActivity 中:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}
在我的片段中:
foto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
StrictMode.setVmPolicy(builder.build());
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT,
Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "/DCIM/Myapp/testPhoto.jpg")) );
imageUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory()+"/DCIM/Myapp/testPhoto.jpg"));
startActivityForResult(cameraIntent,CAMERA_REQUEST);
}
和onActivityResult在同一个片段中:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
System.out.println("Called");
if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) {
Bitmap bitmap=null;
try{
bitmap = BitmapFactory.decodeStream(getActivity().getContentResolver().openInputStream(imageUri));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
【问题讨论】:
标签: android android-fragments android-camera onactivityresult startactivityforresult