我创建了Sliding Tabs中描述的滑动标签,并希望将转移的数据用于更多内容。 我搜索了解决方案,但每次都是空的。
我在我的Activity中使用了以下代码。 Fragment名为tab1_simplecall,framelayout的ID为tab1_fragment:
SELECT m.merchantId
sum(if(m.Category='gold',m.total,null)) as gold,
sum(if(m.Category='silver',m.total,null)) as silver,
sum(if(m.Category='bronze',m.total,null)) as bronze
FROM merchants m
GROUP BY m.merchantId
在我的片段中,我尝试接收数据:
if (findViewById(R.id.tab1_fragment) != null){
if (savedInstanceState!=null) {
return;
}
tab1 = new tab1_simplecall();
getSupportFragmentManager().beginTransaction().add(R.id.tab1_fragment, tab1);
}
Fragment fragObj = new Fragment();
Bundle bundle = new Bundle();
bundle.putInt("ID", ID);
bundle.putString("time", time);
bundle.putString("worker", worker);
fragObj.setArguments(bundle);
但每次捆绑b都为空。我该如何解决这个问题?
答案 0 :(得分:0)
您可以使用sharedPreference在活动或片段之间发送数据。
答案 1 :(得分:0)
我将以下代码移到了活动中的onCreate的末尾。现在数据将被转移。谢谢你到目前为止:))
if (savedInstanceState == null) {
tab1 = new tab1_simplecall();
bundle.putString("ID", "345123");
tab1.setArguments(bundle);
getSupportFragmentManager().beginTransaction().add(R.id.tab1_fragment, tab1).commit();
}
但是几毫秒之后,应用程序崩溃并显示消息" IllegalArgumentException:找不到id ... for fragment ...
我的布局选项卡片段:
<LinearLayout
android:orientation="vertical"
android:id="@+id/tab1_fragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="30dp">
在我的Activity中,我在Fragmentlayout中调用片段的id(tab1_fragment)。但为什么? :(