Fragment和Activity直接跳轉後數據傳遞

場景:Fragment跳轉到Activity後要得到返回數據

 startActivityForResult  (注:此處不能爲 getActivity.startActivityForResult  否則  onActivityResult不會走start時候的Fragment裏面的onActivityResult)


①從Fragment開啓Activity

public class OrderManagerActivity extends Fragment{
.................
                                Intent intent = new Intent(getActivity() , OrderDetailActivity.class);
				intent.putExtra("order_id", list_order.get(arg2).getOrder_id());
				intent.putExtra("whichItem", str_flag);
				startActivityForResult(intent, flag_position);

.........................


	@Override
	public void onActivityResult(int requestCode, int resultCode, Intent data) {
		// TODO Auto-generated method stub
		int a = resultCode;
		int b = resultCode;
		super.onActivityResult(requestCode, resultCode, data);
	}
}

注意:onActivityReuslt的 requsetCode必須>=0  
之前  startActivityForResult(intent,flag_position)的時候沒注意  把flag_position設爲了負數  後來開啓的Activity是可以走到setResult(XX);這一步 但是返回回來之後的Fragmetn不會走 onActivityResult了;所以requestCode必須不爲負數<pre name="code" class="java">
②開啓了Activity後 在Activity退出的時候
setResult(XX)
finish();

<pre name="code" class="java">


發佈了33 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章