我有一個活動,它是幾個片段的容器。其中一個片段啓動另一個活動,從第二個活動開始,我想將一些數據發送到其中一個片段。我怎樣才能做到這一點?基本上,第一個活動停留在第二個活動之外,其中一個EditView會在第二個活動關閉時用新值更新。我可以使用意圖,但如果活動已經開始,我該如何發送它?謝謝。將數據發送到android中的另一個活動的片段
回答
您需要使用startActivityForResult()
開始第二個活動。在完成第二個活動之前,您需要將數據添加到捆綁中,然後將此結果設置爲意圖。
Bundle bundle = new Bundle();
bundle.putString("myData", "myValue");
Intent intent = new Intent();
intent.putExtra(bundle);
setResult(intent, 0);
finish();
然後在活動1應該有一個onactivityresult
方法從意圖檢索值,並將它放在你在你的片段要
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Bundle bundle = data.getData();
string value = bundle.getString("myData");
}
我不知道如果我有它完全正確的記住它在我頭頂,但應該足以讓你開始我的想法。
謝謝你Boardy。我已經從該片段調用了getActivity()。startActivityForResult(),它工作。 –
但捆綁不接受putextra! intent.putExtra(intent)是什麼意思; ? –
這應該是「intent.putExtra(bundle)」。我已經糾正了答案 – Boardy
如果您想要將數據從您的片段傳回其包含的活動,可以通過聲明一個接口處理程序並通過該接口傳遞數據來完成。並確保您的包含活動實現這些接口。
例如:在你的片段,聲明如下這個接口:
public interface CallBackInterface {
public void onCallBack(String param);
}
//Declare this interface in your fragment
CallBackInterface callBk;
@Override
public void onAttach(Activity a) {
super.onAttach(a);
callBk= (CallBackInterface) a;
}
在您的片段,當你需要處理的數據傳遞,只是稱之爲「callBk」對象:
public void callBack(String param) {
callBk.onCallBack(param);
}
最後,在含活性,其實現的callbackInterface ...
@Override
public void onCallBack(String param) {
Log.d("TAG","hi " + param);
}
這不是他想要的 – nadav
- 1. 如何從一個活動的片段發送一些數據到另一個活動的另一個片段
- 2. 如何在一個活動中將數據發送到另一個片段?
- 3. 將數據從一個片段發送到另一個片段
- 4. 將數據從基本活動發送到Android中的片段
- 5. 如何從一個片段發送數據到另一個片段中的Android?
- 6. Android從片段發送數據活動
- 7. 將字符串從活動發送到另一個活動的片段
- 8. 我想發送listview數據到android中的另一個活動
- 9. 想要發送listview數據到android中的另一個活動
- 10. 從片段發送數據到活動
- 11. 發送圖片ID從片段到另一個活動
- 12. Android:在另一片段調用片段的DatePickerDialog - 發送數據
- 13. 從活動將數據發送到一個類中的Android
- 14. 將數據從一項活動發送到另一項活動
- 15. 如何將圖像發送到android中的另一個活動?
- 16. 如何將數據庫發送到android studio中的另一個活動
- 17. 如何使用接口將數據從活動發送到Android中的片段?
- 18. 片段上的ImageButton將轉到另一個活動。 Android Studio
- 19. 將數據從活動返回到另一個活動的片段?
- 20. 將包發送到另一個活動
- 21. Android:片段:調用列表片段中的另一個活動
- 22. 如何將數據從一個活動發送到另一個活動。 (藍牙)
- 23. 發送2位數據從1活動到另一個在android
- 24. 如何將一個片段中的listadapter事件發送到另一個片段?
- 25. 發送數據從活動到片段android studio
- 26. 發送數據從片段到活動android c#
- 27. 將值從一個活動發送到另一個活動
- 28. 將字符串發送到活動,然後發送到活動的片段
- 29. 將數值從一個活動發送到另一個活動活動
- 30. 將數據發送到另一個活動上運行時
如果你想返回一些數據,結果,你可以用'startActivityForResult'開始第二個'Activity'。 – Luksprog