所以我试图从照片库中获取多个图像的uris。它可以正常工作,但是当意图启动时,它会直接进入"从"从"窗口打开,然后我必须在左下方单击"照片"。然后,我有机会击中"图片"并进行选择。
如果用户不必提前知道执行此步骤序列,那会更好。如果有一个意图让他们立即选择图像,我会喜欢的。
我已经稍微挖出了意图API,但是似乎每个人都将Intent.ACTION_GET_CONTENT
与额外的Intent.EXTRA_ALLOW_MULTIPLE
一起使用。我想知道这种意图是否可以绕过那些烦人的额外步骤。
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
intent.addFlags(Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION);
startActivityForResult(Intent.createChooser(intent, "Select Picture"), SELECT_PICTURES);
public void onActivityResult (int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == SELECT_PICTURES)
{
if (resultCode == Activity.RESULT_OK)
{
if (data.getClipData() != null)
{
int count = data.getClipData().getItemCount();
for (int i = 0; i < count; i++)
{
Uri uri = data.getClipData().getItemAt(i).getUri();
uriList.add(i, uri);
}
}
}
}
// Some other stuff...
}
创建一个全局意图时说:" 我想要一些图像",并且有一些应用程序作为处理此操作的选项,OS可以t决定完成此任务的决定。
此代码可能会为您提供帮助:
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
intent.addFlags(Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION);
startActivityForResult(intent, SELECT_PICTURES);