在Fragment中怎么调用onActivityResult

来源:互联网 发布:扭曲验证码识别 python 编辑:程序博客网 时间:2024/05/21 10:08

前言:

  • 我们都知道在activity中通过onActivity可以接收另一activty关闭时传回的requestCode、resultCode和data等,但是我们的大多数操作是在fragment中实现的,那么,我们又应该怎么样在fragment中调onActivityResult呢?

第一步:

  • 在使用fragment的activity上这样操作
    @Override    protected void onActivityResult(int requestCode, int         resultCode, Intent intent)    {        super.onActivityResult(requestCode,resultCode,intent);        Fragment fragment = RepairFragment.getInstance();        fragment.onActivityResult(requestCode,resultCode,intent);    }
  • 其中Fragment fragment = RepairFragment.getInstance();这句的意思是找到相对应的fragment,也可以通过fragment管理器
    Fragment f = fragmentManager.findFragmentByTag(curFragmentTag);

第二步

  • 在要调用onActivityResult的fragment上执行相对应的操作
    @Override    public void onActivityResult(int requestCode,int resultCode,Intent intent)    {        super.onActivityResult(requestCode,resultCode,intent);        switch(requestCode){            case REQUEST_CODE_GALLERY:                if(resultCode == RESULT_OK){                    imgList.clear();//                    for(int i = 0; i<= Album.parseResult(intent).size()-1; i++){                        imgList.add(Album.parseResult(intent).get(i));                    }                    adapter.notifyDataSetChanged();                }                break;        }    }

提示一点,在acitvity中传递Context时我们可以用this,那如果是在fragment中呢?我们就可以用getActivity()来代替

阅读全文
0 0