从活动导航到TabLayout/ViewPager片段
问题描述:
我想弄清楚如何从活动导航到由单独的活动托管的片段。从活动导航到TabLayout/ViewPager片段
更复杂的是,目标活动托管一个带有3个独立片段的TabLayout/ViewPager。以下是与TabLayout/ViewPager关联的适配器的代码。我试图导航到TabLayout/ViewPager的“NewFragment”部分:
public class SectionPagerAdapter extends FragmentPagerAdapter {
public SectionPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
return new TrendingFragment();
case 1:
return new FollowingFragment();
case 2:
return new NewFragment();
default:
return new TrendingFragment();
}
}
@Override
public int getCount() {
return 3;
}
@Override
public CharSequence getPageTitle(int position) {
switch (position) {
case 0:
return getResources().getString(R.string.trending_text);
case 1:
return getResources().getString(R.string.following_text);
case 2:
return getResources().getString(R.string.new_text);
default:
return getResources().getString(R.string.trending_text);
}
}
}
我想我将不得不使用的意图,但在那里我感到困惑,是我会怎样确保活动加载NewFragment而不是选项卡中的第一个片段,即TrendingFragment。
答
你可以尝试这样的事情。
在第一个活动:
int position = the fragment position in the target activity you want to open;
Intent intent = new Intent(getActivity(), TargetActivity.class);
intent.putExtra("fragmentPosition", position);
startActivity(intent);
诠释的第二个活动,后视图寻呼机初始化:
Intent intent = getIntent();
int fragmentPosition = intent.getIntExtra("fragmentPosition");
viewPager.setCurrentItem(fragmentPosition);
希望它可以帮助
+0
我同意,这工作,但它可能值得检查,如果捆绑预先确定是否加载第一个选项卡或来自上述活动的所需选项卡 – tccpg288
下面的答案应该为你做吧! – Eenvincible