参考:ACTION_QUICK_VIEW_DOCUMENTATION
在文档中说ACTION_QUICK_VIEW应该能够通过ClipData获取Uri列表,以便可以显示多个项目,这是我尝试过的-但图像视图最终完全变成了“黑色”,就好像没有图像加载。
仅用一个Uri设置“ intent.data”就可以了,只是在添加ClipData时它会消失。
我是Kotlin / Android的新用户,只有两天时间,如果我的方法完全错误地使用xD,请对不起
var uriArray = ArrayList<Uri>()
/*
some loop to populate uriArray with image URLs
eg: */
uriArray.add("https://example.com/image1.jpg".toUri())
uriArray.add("https://example.com/image2.jpg".toUri())
uriArray.add("https://example.com/image3.jpg".toUri())
val clipData: ClipData? = null
uriArray.forEach {
var item = ClipData.Item(it)
if (clipData == null) {
ClipData("URIs", arrayOf(ClipDescription.MIMETYPE_TEXT_URILIST), item)
}
else {
clipData!!.addItem(item)
}
}
val intent = Intent(Intent.ACTION_QUICK_VIEW)
intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_GRANT_READ_URI_PERMISSION
intent.clipData = clipData
intent.putExtra(Intent.EXTRA_INDEX, 2) /* just for testing, should put us at image index 2 */
startActivity(intent)