[英]Send String from an Activity to a Fragment of another Activity
我有兩個活動(A和B)和一個片段F片段F包含在活動B中我想將字符串從活動A發送到片段F怎么能這樣做? 謝謝!
它與您在活動之間交換數據幾乎相同。 你應該在開頭使用getActivity()來訪問片段。
檢查以下代碼:
在活動A中:
Intent intent = new Intent(this,ActivityB.class);
intent.putExtra("data",data); //data is a string variable holding some value.
startActivity(intent);
在活動B的片段F中
String data = getActivity().getIntent().getStringExtra("data");
首先,您實際上會將該字符串發送到您的活動B.例如:
Intent intent = new Intent(this, YourActivityClass.class);
intent.putExtra("myString", "this is your string");
startActivity(intent);
然后在執行fragment-transaction之前從活動B中讀取該字符串並注入到您的片段中。 例如:
Bundle args = new Bundle();
args.putString("myString", getIntent().getExtras().getString("myString"))
yourFragment.setArguments(args);
稍后,在片段中使用getArguments()
來檢索該包。
或者,在片段中使用以下內容直接訪問活動意圖並獲取所需的值:
String str = getActivity().getIntent().getStringExtra("myString");
有關詳細信息,請閱讀此內容 。
在Fragment.java文件中添加以下代碼,
public static String name= null;
public void setName(String string){
name = string;
}
在要從中發送String的MainActivity.java中添加以下代碼,
String stringYouWantToSend;
Fragment fragment = new Fragment();
fragment.setName(stringYouWantToSend);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.