在线直播源码,fragment中onActivityForResult得到返回值

在线直播源码,fragment中onActivityForResult得到返回值

首先从fragment跳转到一个activity,

注意:如果requestCode在onActivityResult中的值跟startActivityForResult中的值不同时,请使用getActivity().startActivityForResult()方法进行跳转!!!

 


 intent = new Intent(getContext(), RunTextActivity.class);
                startActivityForResult(intent,999);
 

再从activity返回,此时携带数据,并且setResult()

 

mIntent是意图可以携带值

 

 
            setResult(RESULT_OK, mIntent);
 

 

在回到fragment所在的activity 的onActivityForResult方法

 


 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (resultCode == RESULT_OK) {
            RunningFragment fragment = (RunningFragment) mManager.findFragmentById(R.id.fragment_container);
            //通过id或者tag可以从manager获取fragment对象,
            fragment.onActivityResult(requestCode, resultCode, data);
        }
    }
 

 

上面写完再回到fragment的onActivityForResult 方法可以得到值了

 


  @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == Activity.RESULT_OK) {
            Bundle extras = data.getExtras(); //取值
            String text = extras.getString("text");
            mContent.setText(text);
        }
    }

 

 以上就是在线直播源码,fragment中onActivityForResult得到返回值, 更多内容欢迎关注之后的文章

 

posted @ 2023-04-13 14:07  云豹科技-苏凌霄  阅读(10)  评论(0编辑  收藏  举报