線上直播原始碼,fragment中onActivityForResult得到返回值

zhibo系統開發發表於2023-04-13

線上直播原始碼,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得到返回值, 更多內容歡迎關注之後的文章


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2945501/,如需轉載,請註明出處,否則將追究法律責任。

相關文章