【问题标题】:How to manage onActivityResult() while using fragment in android如何在android中使用片段时管理onActivityResult()
【发布时间】:2020-01-21 14:57:28
【问题描述】:

我有一个包含一个活动和多个片段的应用程序。我在片段中有一个调用 onactivityresult 的方法。当调用 onactivityresult 时,我需要一个存在于片段中而不是在活动中的变量,那么如何在片段中管理 onactivityresult 可以管理它并访问该变量?我可以在片段而不是活动中调用 onactivityresult 吗?

我想在片段中调用它:

 override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        if(requestCode==1001){
            iabHelper.handleActivityResult(requestCode,resultCode,data)
        }else{
            super.onActivityResult(requestCode, resultCode, data)
        }
    }

这里需要的变量是iabHelper

【问题讨论】:

  • 是的,你可以。您可以直接在片段中覆盖onActivityResult()
  • @ChristilynArjona onActivityResult 不能在片段中覆盖。应该如何调用它?
  • @john onActivityResult() 绝对是片段 api 的一部分:developer.android.com/reference/androidx/fragment/app/…。如果您在片段中使用它时遇到问题,请确保您的 activity 调用 super.onActivityResult()

标签: android android-fragments android-activity onactivityresult


【解决方案1】:

我在我的项目片段中使用 onActivityResult 来上传图片。希望对你有帮助。

  @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {

            try {
                Bitmap thumbnail = MediaStore.Images.Media.getBitmap(
                        getActivity().getContentResolver(), imageUri);
                Bitmap converetdImage = getResizedBitmap(thumbnail, 700);
                uploadedImagesList.add(converetdImage);
                uploadImagesAdapter.notifyDataSetChanged();


            } catch (Exception e) {
                e.printStackTrace();
            }

        }
    }

【讨论】:

  • 谢谢,是的,你可以在片段中调用它,一切正常
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-23
  • 2014-03-30
  • 2012-01-01
  • 1970-01-01
  • 2015-10-01
  • 1970-01-01
  • 2014-07-25
相关资源
最近更新 更多