1

我目前正在开发一个应用程序,用户可以通过拍照或从相册上传照片来通过图像回答问题。

我分成了两个类,分别是 FulfillPhotoTaskActivity、AddPhotoActivity。FulfillPhotoTaskActivity 有imageView、addphoto 按钮和save 按钮。当我按下 addphoto 按钮时,它转到 AddPhotoActivity,我们可以选择两个选项(拍照或上传照片)。我完成了如果用户按下拍照按钮然后它会打开相机并拍照的部分。我创建了获取图像数据的 onActivityResult。但在许多示例中,在 onActivityResult 内部它们也有 imageView,例如 setImageBitmap。

我的问题是,如何从 AddPhotoActivity 获取 imageView 并将其显示在我已经为 XML 制作的 FulfillPhotoTaskActivity 中。

4

1 回答 1

0

当您拍照时,它会将图像保存到文件中。您可以检索此图像文件,然后可以在 FulfillPhotoTaskActivity 中调用您的 imageView 并将 imageView 设置为文件中的图像。

以下代码将启动相机意图和文件到给定位置:

    File root = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Folder/SubFolder");

    String folder = root.toString(); 
    File file = new File(folder, "fileName" + ".jpg");
    Uri outputFileUri = Uri.fromFile(file);

    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);

    startActivityForResult(cameraIntent, 0);

现在,当用户拍照时,您就知道它会保存在哪里。在您的 FulfillPhotoTaskActivity 中,您可以调用您的 imageview:

    ImageView imageView = (ImageView)findViewById(R.id.YOUR_IMAGE_VIEW_ID);

最后,您可以将图像设置为图像视图:

    imageView.setImageBitmap(BitmapFactory.decodeFile(file));

因此,您不需要从 AddPhotoActivity 获取 imageview。您只需要文件名。然后,您可以返回 FulfillPhotoTaskActivity 并将 imageview 设置为位图文件。

我希望这有帮助!

于 2012-11-04T00:05:10.390 回答