使用相机选项打开图像选择器

时间:2019-08-22 12:03:22

标签: java android android-camera filechooser

如何打开图像选择器并显示用于拍照的选项?

这是我的代码:

private void openFileChooser() {
    Intent intent = new Intent();
    intent.setType("image/*");
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(intent, PICK_IMAGE_REQUEST);
}

问题是没有打开的摄像头选项。如何添加呢? 这就是我得到的: enter image description here

2 个答案:

答案 0 :(得分:1)

您可以使用this库或显示带有两个按钮的常规警报对话框,一个按钮用于图库,一个按钮用于相机。

还有一个类似的问题:Dialog to pick image from gallery or from camera

答案 1 :(得分:1)

您必须指定用于通过意图调用选择器/应用程序的操作。而且由于从库中选择图像并使用相机拍摄新图像的操作有所不同,因此我认为选择者不会同时选择在以下位置上传图像和拍摄新图像同时。作为参考,您可以在Facebook或whatsaapp中查看个人资料图片更改过程。单击要更改的图像时,将显示一个自定义对话框,其中包含用于上载图像,拍摄新图像或从先前上载的图像中进行选择的选项。根据用户选择的应用,将用户导航到特定的应用(相机/图库等)

您可以做的是首先创建带有两个选项的自定义对话框(或基于应用程序设计的布局)

  1. 拍摄新图像。
  2. 从图库中上传图片。

根据用户单击的内容,执行代码以将用户导航到图库或摄影机应用程序。如果用户单击“从图库上传图像”,请执行上述代码;如果用户单击“拍摄新图像”,请执行用于打开相机的代码。

private void takeNewImage() {
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(takePictureIntent,CAMERA_INTENT_REQ_CODE);
}