我的活动里面有3个片段。我需要在我的活动中重新启动第一个片段,点击按钮。
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFrag(new HomeFragment(), "Home");
adapter.addFrag(new CategoryFragment(), "Category");
adapter.addFrag(new FilterFragment(), "Filter");
viewPager.setAdapter(adapter);
我测试以下方式,但不起作用并显示错误: refresh fragment at reload
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.app.Fragment.setNextAnim(int)' on a null object reference
答案 0 :(得分:1)
您可以使用以下方式重新加载片段:
FragmentTransaction tr = getFragmentManager().beginTransaction();
tr.replace(R.id.fragment_layout, instanceFragment);
tr.commit()
将instanceFragment
要重新加载的片段实例和fragment_layout
活动布局XML文件中的FrameLayout
组件。
答案 1 :(得分:0)
在按钮上单击,检查ViewPager的当前位置是否大于0(第一个位置)并将其设置为第一个位置,如下所示:
const TeamType = new GraphQLObjectType({ ... });
const BoxscoreType = new GraphQLObjectType({
name: 'Boxscore',
fields: () => ({
teams: {
type: TeamType
},
...
})
});