如何將數據從活動傳遞到片段。它是有據可查的,但不幸的是沒有解決方案適用於我。如何將數據從AsyncTask發送到片段
我想從我的主要活動內部的AsyncTask類發送數據到另一個片段。
最流行的答案是使用捆綁,所以我曾嘗試以下:
的AsyncTask:
Bundle bundle = new Bundle();
bundle.putString("test", "From AsyncTask");
MyFragmentClass fragobj = new MyFragmentClass();
fragobj.setArguments(bundle);
片段:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = inflater.inflate(R.layout.fragment_one, container, false);
String value = getArguments().getString("test");
Log.i("valueTest", value);
return rootView;
}
的字符串沒有被傳遞到片段因爲我收到以下內容:
「java.lang.NullPointerException:Attemp噸調用虛擬方法'java.lang.String android.os.Bundle.getString(java.lang.String)'空對象引用「
我希望有任何幫助。
什麼是您的AsyncTask代碼? –
確保你沒有在'FragmentTransaction'中添加一個不同的'MyFragmentClass'實例。此外,您本身共享的代碼會導致錯誤。 您還沒有關閉雙引號:'bundle.putString(「test」,「From AsyncTask);' – SlashG
感謝您的建議Cgx解決方案 –