我正在尝试使用放置在我的UploadActivity类中的代码从图库中选择图片
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP_MR1)
private void selectImage(){
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) {
startActivityForResult(Intent.createChooser(intent,"Select Picture"),REQUEST_CODE);
}
}
public void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode,resultCode,data);
if(requestCode == REQUEST_CODE && resultCode == RESULT_OK && data != null && data.getData() != null ){
Uri uri = data.getData();
try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), uri);
ImageHolder.setImageBitmap(bitmap);
}
catch (IOException e){
e.printStackTrace();
}
}
}
但是它一直给我上述错误。是否有我需要导入的内容,如果是的话,那是什么,因为单击选项时,IDE-android studio不会显示我。 如果没有要导入的内容,我该如何编辑以解决错误?
感谢您的支持。
答案 0 :(得分:2)
只需定义一个保存您的请求代码的常量值即可。
像这样private static final Int REQUEST_CODE = 12
REQUEST_CODE
的值可以是任何数字,但在某种意义上应该是唯一的,如果您的onActivityResult
被不同的来源调用,则每个这些来源必须具有不同的请求代码。否则,您将陷入错误的状况。
答案 1 :(得分:1)
错误已清除。尚未声明变量REQUEST_CODE。 只需将其声明为私有并将其初始化为1即可:
private int REQUEST_CODE = 1;
我希望能成功