1. 程式人生 > 其它 >android 從Activity跳轉到fragment執行onActivityResult最簡單的解決方法

android 從Activity跳轉到fragment執行onActivityResult最簡單的解決方法

在開發android中,有些人往往很疑惑,當一個FragmentActivity中有多個Fragment的時候,如a,b,c三個Fragment(碎片),
其中b中進行了操作,跳轉到了新的D介面activity)。但是當D操作完後,返回值到b Fragment(碎片)。

那麼問題就來了,肯定會有人問,b是一個Fragment(碎片),如何才能接收到D傳過來的值呢?

解決方法非常簡單:

1、現在b fragment 中新增onActivityResult 方法,如下:

 @Override
    public void onActivityResult(int requestCode, int
resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); Log.i("Test1","-----------requestCode="+requestCode); Log.i("Test1","-----------resultCode="+resultCode); switch (resultCode){ case 1://在這裡獲取你需要的資料 Toast.makeText(getContext(),"提交意見反饋成功",Toast.LENGTH_LONG).show();
break; case 2: break; } }

2、在b fragment 跳轉到 D Activity 執行如下方法:

startActivityForResult(new Intent(getContext(), FeedbackActivity.class),1);

3、D activity 跳轉到 b fragment 執行如下程式碼:

 setResult(1);
 finish();