Java 在android studion中从图库中获取图像-无关代码
我用过,效果很好 然而,我有一个问题,关于代码的一部分,它似乎不相关,最终没有被使用Java 在android studion中从图库中获取图像-无关代码,java,android,image-gallery,Java,Android,Image Gallery,我用过,效果很好 然而,我有一个问题,关于代码的一部分,它似乎不相关,最终没有被使用 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == RESULT_LOAD_IMAGE && resu
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
ImageView imageView = (ImageView) findViewById(R.id.imgView);
Bitmap bmp = null;
try {
bmp = getBitmapFromUri(selectedImage);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
imageView.setImageBitmap(bmp);
}
}
从字符串[]filePathColumn={MediaStore.Images.Media.DATA}的开头开始代码>行,一直到光标.close()代码>
最后,Bitmap
获取Uri
,就这样
为什么我们需要中间所有的代码?< /P>
谢谢,
如果你只想从<代码> URI < < /P>获得<<代码>位图< /代码>,你将不需要中间的代码。
如果您想要图像的路径,例如将文件上载到远程服务器,那么该代码将用于获取图像的路径。但是,你不应该依赖于这种方法来获取图像的路径。 如果你只想从<代码> URI < < /P>获得< <代码>位图< /代码>,你将不需要中间的代码。
如果您想要图像的路径,例如将文件上载到远程服务器,那么该代码将用于获取图像的路径。但是,您不应该依赖此方法来获取图像的路径。如果您需要在Imageview
中捕获图像,您可以使用Imageview.setImageURI(selectedImage)
将图像显示到Imageview
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
ImageView imageView = (ImageView) findViewById(R.id.imgView);
imageView.setImageURI(selectedImage);
}
}
当你需要在服务器上上传你的图片时,你需要的图片路径,然后这个代码被用来获取图片的路径
它将从图像URI获取原始路径。如果需要在Imageview
中捕获图像,则可以使用Imageview.setImageURI(selectedImage)
将图像显示到Imageview
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
ImageView imageView = (ImageView) findViewById(R.id.imgView);
imageView.setImageURI(selectedImage);
}
}
当你需要在服务器上上传你的图片时,你需要的图片路径,然后这个代码被用来获取图片的路径
它将从图像URI中获取原始路径。因为当您从库中选择图像时,您可能会从不同的部分选择相同的图像。假设您可以从文件夹A
中选择一幅图像,也可以从最近的
中提取相同的图像
从画廊里,它可能会给你
content://media/external/images/media/123
从最近来看,它可能会给出content://com.android.providers.media.documents/document/image:132
返回的内容URI可能会有所不同,具体取决于选择的来源。特别是自从Kitkat(API级别19)引入存储访问框架(SAF)以来,在选择照片时,您可以看到所有文档存储提供商
那里的代码将返回图像文件的直接文件系统路径,因为当您从库中选择图像时,您可能会从不同的部分选择相同的图像。假设您可以从文件夹A
中选择一幅图像,也可以从最近的
中提取相同的图像
从画廊里,它可能会给你
content://media/external/images/media/123
从最近来看,它可能会给出content://com.android.providers.media.documents/document/image:132
返回的内容URI可能会有所不同,具体取决于选择的来源。特别是自从Kitkat(API级别19)引入存储访问框架(SAF)以来,在选择照片时,您可以看到所有文档存储提供商
那里的代码将返回图像文件的直接文件系统路径
为什么我们需要中间所有的代码?< /P>
你没有
而且,由于该代码相当糟糕,您首先不应该使用它。Uri
不是文件,它不必指向文件,无论该Uri
来自MediaStore
还是其他任何地方
为什么我们需要中间所有的代码?< /P>
你没有
而且,由于该代码相当糟糕,您首先不应该使用它。Uri
不是文件,它不必指向文件,无论该Uri
来自MediaStore
还是其他任何地方。我的感觉是,您应该能够使用selectedImage
加载图像,只需使用imageView.setImageURI(selectedImage)
我觉得您应该能够使用selectedImage
加载图像,只需使用imageView.setImageURI(selectedImage)
请在投票前给出解释是的,你是对的@Anonymous一些好友故意投票否决你的帖子,我认为这是一个很好的回答,为那些人感到羞耻。请在投票前给出解释是的@Anonymous一些好友故意投票否决你的帖子,我认为这是一个很好的回答,为那些人感到羞耻“然后该代码用于获取图像的路径”--该代码仅在Uri
具有内容
方案且来自MediaStore
时才有效。即使如此,生成的路径也可能不可用。”然后该代码用于获取图像的路径“--只有当Uri
具有content
方案并且来自MediaStore
时,该代码才会工作。即使如此,生成的路径也可能不可用。