Android 如何解决kitkat和其他版本的图库中任何照片的路径问题?
我使用这个onActivityResult方法从图库或相机中获取照片 及其获取路径的方法 错误是 这给了我kitkat和其他版本中的路径错误。你能解决这个问题吗?我们将感谢您的帮助Android 如何解决kitkat和其他版本的图库中任何照片的路径问题?,android,android-gallery,Android,Android Gallery,我使用这个onActivityResult方法从图库或相机中获取照片 及其获取路径的方法 错误是 这给了我kitkat和其他版本中的路径错误。你能解决这个问题吗?我们将感谢您的帮助 请尝试以下代码: if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && null != data) { Uri selectedImage = data.getData()
请尝试以下代码:
if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
String imgDecodableString;
if(cursor==null) {
imgDecodableString= selectedImage.getPath();
}
else {
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
imgDecodableString = cursor.getString(columnIndex);
cursor.close();
}
}
imgdecodablesting
将包含图像的最终路径,您可以在ImageView中将图像设置为:
theftimage.setImageBitmap(BitmapFactory.decodeFile(imgDecodableString));
如果您只想将所选文件放在ImageView中,则不需要路径 一条语句适用于所有Android版本:
theftimage.setImageBitmap(BitmapFactory.decodeStream(
getContentResolver().openInputStream(data.getData())));
你为什么要惹麻烦?具有内置文件路径函数的Uri类。uri.getPath()。那是。它将返回文件的路径。thnx!!!它工作得很好,听起来很棒。。快乐编码。
if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
String imgDecodableString;
if(cursor==null) {
imgDecodableString= selectedImage.getPath();
}
else {
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
imgDecodableString = cursor.getString(columnIndex);
cursor.close();
}
}
theftimage.setImageBitmap(BitmapFactory.decodeFile(imgDecodableString));
theftimage.setImageBitmap(BitmapFactory.decodeStream(
getContentResolver().openInputStream(data.getData())));