如何将数据从活动传递到片段。它是有据可查的,但不幸的是没有解决方案适用于我。如何将数据从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解决方案 –