[英]How to reach onActivityResult() from Fragment and handle it?
我有一个MainActivity和一个附加的滑动菜单。
当用户单击滑动菜单中的按钮时,我分别调用Fragments。
之后,在这些片段之一中,我叫图库照片选择器,需要在片段中处理它。
我怎么解决这个问题?
覆盖onActivityResult
方法在片段和通过使该片段的对象像下面的方式从活动的onActivityResult方法调用它,
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (fragment != null) {
fragment.onActivityResult(requestCode, resultCode, data);
}
}
希望对您有帮助。
您可以使用此代码
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(intent, SELECT_REQUEST);
在onActivityResult中
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == SELECT_REQUEST && resultCode == Activity.RESULT_OK) {
try {
InputStream stream = getActivity().getContentResolver()
.openInputStream(data.getData());
pic = BitmapFactory.decodeStream(stream);
stream.close();
imageView.setImageBitmap(pic);
} catch (Exception e) {
e.printStackTrace();
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.