簡體   English   中英

在片段之間傳遞數據

[英]Pass data between fragments

我想將用戶ID從主Activity轉移到片段。

所以在主要活動中,我做:

 Fragment fragment = new Fragment();
 final Bundle bundle = new Bundle();
 bundle.putString("id_User", id);
 Log.i("BUNDLE", bundle.toString());
 fragment.setArguments(bundle); 

在日志中我可以看到

BUNDLE : Bundle[{id_User=1}]

在片段中,我在onCreate測試它

Bundle arguments = getArguments();
if (arguments != null)
{
Log.i("BUNDLE != null","NO NULL");
} else {
Log.i("BUNDLE == null","NULL");
}

我有

BUNDLE == null: NULL

所以轉移是成功的,但我怎樣才能收到片段中的數據呢?

您可以使用:

 Bundle args = getArguments();
 if (args  != null && args.containsKey("id_User"))
     String userId = args.getString("id_User");

只需使用:

String User = getArguments().getString("id_User", "Default Value");

如果您請求的密鑰不存在,將返回您提供的默認值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM