根据ViewPager2/TabView中的片段更改Android活动的标题可以通过以下步骤实现:
下面是一个示例代码:
// 在活动中设置ViewPager2和TabLayout
ViewPager2 viewPager = findViewById(R.id.viewPager);
TabLayout tabLayout = findViewById(R.id.tabLayout);
FragmentStateAdapter adapter = new MyPagerAdapter(this);
viewPager.setAdapter(adapter);
new TabLayoutMediator(tabLayout, viewPager,
(tab, position) -> tab.setText("Tab " + (position + 1))
).attach();
// 自定义的FragmentStateAdapter
public class MyPagerAdapter extends FragmentStateAdapter {
private static final int NUM_FRAGMENTS = 3;
public MyPagerAdapter(@NonNull FragmentActivity fragmentActivity) {
super(fragmentActivity);
}
@NonNull
@Override
public Fragment createFragment(int position) {
// 返回对应位置的片段实例
return new MyFragment();
}
@Override
public int getItemCount() {
// 返回片段的数量
return NUM_FRAGMENTS;
}
}
// 片段中更改活动标题
public class MyFragment extends Fragment {
@Override
public void onResume() {
super.onResume();
// 设置新的标题
getActivity().setTitle("Fragment Title");
}
}
在这个示例中,我们使用ViewPager2和TabLayout来展示多个片段。通过自定义的FragmentStateAdapter,我们可以控制片段的数量和实例化。在片段的onResume方法中,我们调用活动的setTitle方法来更改活动的标题。
领取专属 10元无门槛券
手把手带您无忧上云