Java 如何从最低版本获取onActivityResult

Java 如何从最低版本获取onActivityResult,java,android,Java,Android,在我的应用程序中,我可以选择从图库中选择图片。我想在图像视图上放置图像…对于最高版本的Api 21,我的代码在图像视图上放置图像,但对于最低版本的Api 15,不在图像视图上放置图像。请任何人帮帮我 我的应用程序配置: minSdkVersion 14 targetSdkVersion 22 versionCode 1 versionName "1.0" 我的代码在这里: 公共类ProfileFragment扩展了该片段{ //私有静态位图图像=空; 私人影像

在我的应用程序中,我可以选择从图库中选择图片。我想在图像视图上放置图像…对于最高版本的Api 21,我的代码在图像视图上放置图像,但对于最低版本的Api 15,不在图像视图上放置图像。请任何人帮帮我

我的应用程序配置:

    minSdkVersion 14
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
我的代码在这里:

公共类ProfileFragment扩展了该片段{ //私有静态位图图像=空; 私人影像视图; 专用静态最终int选择_PHOTO=1; 私有字符串selectedImagePath=null; 私有Uri mselectedimageri; 按钮浏览功能; @凌驾 公共视图OnCreateViewLayoutFlater充气机、视图组容器、, 捆绑存储状态{ SetHasOptions菜单;//用于选项菜单 视图=充气机。充气机。布局。碎片\布局\剖面图,容器, 错误的 imageView=ImageViewview.findViewByIdR.id.profile\U图像; browseProfilePic=按钮视图.findviewbydr.id.btn\u pick; browseProfilePic.SetOnClickListener新建视图.OnClickListener{ @凌驾 公共视图v{ 意向=新意向; //只显示图像,不显示视频或其他任何内容 intent.setTypeimage/*; intent.setActionIntent.ACTION\u获取内容; //如果有多个选项可用,则始终显示选择器 startActivityForResultIntent.createChooseContent,选择图片,选择照片; } }; 返回视图; } @凌驾 ActivityResultant请求代码、int-resultCode、意图数据上的公共无效{ 如果resultCode==MenuActivity.RESULT\u正常{ 如果requestCode==选择照片{ mselectedimageri=data.getData; selectedImagePath=getPathmSelectedImageUri; System.out.printlnImage Path:+选择EDIMAGEPATH; imageView.setImageURImSelectedImageUri; } } } 公共字符串getPathUri { 字符串[]投影={MediaStore.Images.Media.DATA}; Cursor Cursor=getActivity.getContentResolver.queryuri,投影,null,null,null; 如果cursor==null,则返回null; int column_index=cursor.getColumnIndexOrThrowMediaStore.Images.Media.DATA; cursor.moveToFirst; 字符串s=cursor.getStringcolumn\u索引; 光标。关闭; 返回s; } @凌驾 SaveInstanceStateBundle上的公共无效超出状态{ super.onSaveInstanceStateoutState; //将图像位图保存到outState 位图位图=BitmapDrawableimageView.getDrawable.getBitmap; outState.putParcelablebitmap,位图; } @凌驾 ActivityCreatedBundle savedInstanceState上的公共无效{ super.onActivityCreatedsavedInstanceState; //从savedInstanceState读取位图并将其设置为ImageView 如果savedInstanceState!=null{ 位图位图=位图savedInstanceState.getParcelablebitmap; imageView.setImageBitmapbitmap; } } @凌驾 创建选项菜单菜单菜单,菜单充气机菜单{ super.oncreateoptions菜单,充气机; //为菜单充气;这会将项目添加到操作栏(如果存在)。 充气机。充气机。菜单。菜单\配置文件\图片,菜单; } @凌驾 公共布尔值OnOptions ItemSelectedMenuItem项{ //处理操作栏项目上的按下 开关item.getItemId{ 案例R.id.行动完成: Toast.makeTextgetActivity.getApplicationContext,已保存,Toast.LENGTH\u LONG.show; } 返回super.on选项ItemSelectedItem; } } 我认为你的代码不应该在任何API版本上工作。 您正在创建一些片段类实例,但它是本地的——它只存在于onActivityResult范围内。 ProfileFragment已附加到您的MenuActivity实例,因此您应该使用FragmentManager或SupportFragmentManager的方法获取对其实例的引用。创建新的ProfileFragment对象没有意义。 另一件事是您应该使用holder活动实例上下文调用startActivityForResult,方法是:getActivity.startActivityForResult。。。 在MenuActivity的onActivityResult方法中,仅调用super.onActivityResult…,仅此而已。
你能解释一下什么不起作用吗?图像视图中没有设置图像