Android: 从图库中选择照片
Android: Choose Photo from Gallery
我正在尝试使用以下代码访问 android 设备中的照片库:
txtSelectPhoto.setOnClickListener(v->{
Intent i = new Intent(Intent.ACTION_PICK);
i.setType("image/*");
startActivityForResult(i,GALLERY_CHANGE_PROFILE);
});
但是当它打开时,它只是给我一个设备文件夹的空白屏幕,没有这样的照片,尽管设备上有照片。.有什么办法可以解决这个问题吗?
删除 setType()
并在 Intent
构造函数中传递 Uri
,表示您希望用户从中选择的集合:
txtSelectPhoto.setOnClickListener(v->{
Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, GALLERY_CHANGE_PROFILE);
});
或者,保留 MIME 类型并切换到 ACTION_GET_CONTENT
:
txtSelectPhoto.setOnClickListener(v->{
Intent i = new Intent(Intent.ACTION_GET_CONTENT);
i.setType("image/*");
startActivityForResult(i, GALLERY_CHANGE_PROFILE);
});
我正在尝试使用以下代码访问 android 设备中的照片库:
txtSelectPhoto.setOnClickListener(v->{
Intent i = new Intent(Intent.ACTION_PICK);
i.setType("image/*");
startActivityForResult(i,GALLERY_CHANGE_PROFILE);
});
但是当它打开时,它只是给我一个设备文件夹的空白屏幕,没有这样的照片,尽管设备上有照片。.有什么办法可以解决这个问题吗?
删除 setType()
并在 Intent
构造函数中传递 Uri
,表示您希望用户从中选择的集合:
txtSelectPhoto.setOnClickListener(v->{
Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, GALLERY_CHANGE_PROFILE);
});
或者,保留 MIME 类型并切换到 ACTION_GET_CONTENT
:
txtSelectPhoto.setOnClickListener(v->{
Intent i = new Intent(Intent.ACTION_GET_CONTENT);
i.setType("image/*");
startActivityForResult(i, GALLERY_CHANGE_PROFILE);
});