Android 刷新ActionBar选项卡的片段
我正在编写一个Android应用程序,其中我使用了带有标签的ActionBar。当用户按下重新加载按钮时,我将删除所有选项卡,并根据新数据创建新选项卡。我的问题是,在我完成这项工作之后,当前片段的旧内容以及ActionBar中位于其左侧和右侧的片段仍然会显示出来。但是当我转到另一个选项卡时,我看到了新的内容。我也尝试调用ViewPager上的removeAllViews,但是当我重新加载时,会得到空片段 我想我已经在互联网上看到了一个类似问题的解决方案,但它是一个TabHost,我不知道如何获得ActionBar的TabHost 要替换选项卡,我使用以下代码:Android 刷新ActionBar选项卡的片段,android,android-fragments,tabs,android-actionbar,Android,Android Fragments,Tabs,Android Actionbar,我正在编写一个Android应用程序,其中我使用了带有标签的ActionBar。当用户按下重新加载按钮时,我将删除所有选项卡,并根据新数据创建新选项卡。我的问题是,在我完成这项工作之后,当前片段的旧内容以及ActionBar中位于其左侧和右侧的片段仍然会显示出来。但是当我转到另一个选项卡时,我看到了新的内容。我也尝试调用ViewPager上的removeAllViews,但是当我重新加载时,会得到空片段 我想我已经在互联网上看到了一个类似问题的解决方案,但它是一个TabHost,我不知道如何获得
}
我没有收到你的问题。您当前的片段没有加载新数据,这是您的问题吗???如果你能发布你的代码就更好了。我用新的替换片段,但旧的片段仍然会显示,直到我点击另一个选项卡(它不是当前选项卡的直接邻居)。你需要在刷新功能中替换片段。我想你现在正在替换它,点击tab键。这就是为什么直到你点击标签,它会显示旧的。。你能把代码贴在你要替换片段的地方吗?但是我怎样才能直接替换片段呢。我删除所有选项卡并创建新选项卡,调用getItem()时,SectionsPagerAdapter返回新片段。
actionBar.selectTab(actionBar.getTabAt(0));
actionBar.removeAllTabs();
for(int i = 0; i < mSectionsPagerAdapter.getCount(); i++)
actionBar.addTab(actionBar.newTab()
.setText(mSectionsPagerAdapter.getPageTitle(i))
.setTabListener(MainActivity.this));
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return TagTabFragment.newInstance(position);
}
@Override
public int getCount() {
if(tage != null)
return tage.getLength();
return 0;
}
@Override
public CharSequence getPageTitle(int position){
return tage.item(position).getAttributes().getNamedItem("datum").getTextContent();
}