所以基本上我试图实现的是在Android中打开Gallery ,并让用户selectmultiple images 。 现在这个问题经常被问到,但是我不满意答案。 主要是因为我在IDE中find了一些有趣的东西(我稍后回来),因此我不想使用自定义适配器,而只使用了香草。 现在我select一个图像的代码是: Intent intent = new Intent(); intent.setType("image/*"); intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(Intent.createChooser(intent,"Select Picture"), 1); 现在SO和其他网站上的人们会告诉你,你有两个select: 1)不要使用ACTION_GET_CONTENT而是使用ACTION_SEND_MULTIPLE 。 这一个不行。 这是根据文件sending文件,而不是retrieving ,这正是它所做的。 当使用ACTION_SEND_MULTIPLE我有一个窗口打开我的设备,我必须select一个应用程序发送我的数据。 这不是我想要的,所以我想知道人们如何得到这个解决scheme实现了…我错过了什么? 2)实现一个custom Gallery 。 现在这是我最后一个select,我会考虑,因为我不是我正在寻找,因为我必须自己的样式,为什么你不能在香草画廊select多个图像? 必须有一个选项这个..现在有趣的事情我所发现的是这样的: 我在ACTION_GET_CONTENT的文档描述中发现了这个ACTION_GET_CONTENT 。 如果调用者可以处理多个返回的项目(用户执行多重select),那么它可以指定EXTRA_ALLOW_MULTIPLE来指示这一点。 这很有趣。 这里他们指的是用户可以select多个项目的用例。 后来他们在文档中说: 您可以使用EXTRA_ALLOW_MULTIPLE来允许用户select多个项目。 所以这是非常明显的权利? 这是我需要的。 但我的下面的问题是:我在哪里可以把这个EXTRA_ALLOW_MULTIPLE ? 可悲的是,我无法find这个不在开发者.android指南的地方 ,也不是INTENT类中定义的常量。 有人可以帮助我这个EXTRA_ALLOW_MULTIPLE ?
我试图添加一个从Galery照片到一个ImageView但我得到这个错误: java.lang.RuntimeException:将结果ResultInfo {who = null,request = 1,result = -1,data = Intent {dat = content:// media / external / images / media / 1}}传递给activity {hotMetter。 pack / hotMetter.pack.GetPhoto}:java.lang.NullPointerException 这是我的代码: Intent intent = new Intent(); intent.setType("image/*"); intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(Intent.createChooser(intent,"Select Picture"), SELECT_PICTURE); } Bitmap bitmap=null; public void onActivityResult(int requestCode, int resultCode, Intent data) { if (resultCode == Activity.RESULT_OK) { […]
我正试图从画廊获得图像。 Intent intent = new Intent(); intent.setType("image/*"); intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(Intent.createChooser(intent, "Select picture"), resultCode ); 我从这个活动回来后,我有一个数据,其中包含Uri。 看起来像: content://media/externalhttp://img.dovov.com1 我怎么能把这个path转换成真正的path(就像' /sdcard/image.png ')? 谢谢