Android 将图像从库导入片段
我试图在导航滑块中实现一个片段。我需要在我的一个片段中创建一个按钮,以便从默认库导入图像。我在网上尝试了很多代码,但它们似乎不起作用。如果你在android 6.0中测试你的应用程序,这取决于你使用的android版本,你应该在运行时请求许可,否则android不会返回图像 对于预棉花糖,您可以使用以下代码:Android 将图像从库导入片段,android,android-fragments,fragment,navigation-drawer,Android,Android Fragments,Fragment,Navigation Drawer,我试图在导航滑块中实现一个片段。我需要在我的一个片段中创建一个按钮,以便从默认库导入图像。我在网上尝试了很多代码,但它们似乎不起作用。如果你在android 6.0中测试你的应用程序,这取决于你使用的android版本,你应该在运行时请求许可,否则android不会返回图像 对于预棉花糖,您可以使用以下代码: Intent pickIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_UR
Intent pickIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
pickIntent.setType("image/*");
startActivityForResult(pickIntent, 0);
然后重写方法
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, requestCode, data);
try {
// When an Image is picked
if (requestCode == 0 && resultCode == Activity.RESULT_OK && null != data) {
Uri selectedImage = data.getData();
image.setImageBitmap(BitmapFactory.decodeFile(getRealPathFromURI(selectedImage)));
} else
new ShowErrorToast(getActivity(), "Hey! your Android phone is busy");
} catch (Exception e) {
}
}
然后使用该方法获取图像的路径
public String getRealPathFromURI(Uri data) {
String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(data
, filePathColumn, null, null, null);
String picturePath = "";
if (cursor != null) {
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
picturePath = cursor.getString(columnIndex);
cursor.close();
}
return picturePath;
}
对于棉花糖,您应该请求运行时许可,并遵循上述代码欢迎使用堆栈溢出。请帮助我们编辑您的问题,并回答以下问题:您到底尝试了什么?结果如何?这些结果与您想要的结果有何不同?谢谢您的帮助。正如我上面提到的。我需要一个按钮被点击,但我无法识别用户将在哪里点击你上面给出的所有编码。在某些东西上不应该有onClick方法。我应该在我的xml文件中写些什么。谢谢大家。最终我得到了答案。我的错误是我没有使用“查看组”。现在我使用了。它工作得很好。