大佬教程收集整理的这篇文章主要介绍了android – 底部导航片段内的Tab片段,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
public class MainActivity extends AppCompatActivity { private ViewPager viewPager; NavigationView navigationView; private BottomNavigationView.onNavigationItemSELEctedListener mOnNavigationItemSELEctedListener = new BottomNavigationView.onNavigationItemSELEctedListener() { @Override public Boolean onNavigationItemSELEcted(@NonNull MenuItem item) { switch (item.getItemId()) { case R.id.navigation_home: viewPager.setCurrentItem(0); return true; case R.id.navigation_dashboard: viewPager.setCurrentItem(1); return true; case R.id.navigation_notifications: viewPager.setCurrentItem(2); return true; } return false; } }; @Override protected void onCreate(Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); setContentView(R.layout.activity_main); // Hide the activity toolbar getSupportActionBar().hide(); //Initializing viewPager viewPager = (ViewPager) findViewById(R.id.viewpager); setupViewPager(viewPager); final BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation); navigation.setOnNavigationItemSELEctedListener(mOnNavigationItemSELEctedListener); viewPager.addOnPagechangelistener(new ViewPager.onPagechangelistener() { @Override public void onPageScrolled(int position,float positionOffset,int positionOffsetPixels) { } @Override public void onPageSELEcted(int position) { switch (position){ case 0: navigation.setSELEctedItemId(R.id.navigation_homE); break; case 1: navigation.setSELEctedItemId(R.id.navigation_dashboard); break; case 2: navigation.setSELEctedItemId(R.id.navigation_notifications); break; } } @Override public void onPageScrollStateChanged(int statE) { } }); } private void setupViewPager(ViewPager viewPager) { BottomNavPagerAdapter adapter = new BottomNavPagerAdapter(getSupportFragmentManager()); adapter.addFragment(new FirstFragment()); adapter.addFragment(new SecondFragment()); adapter.addFragment(new ThirdFragment()); viewPager.setAdapter(adapter); } }@H_944_2@FirstFragment.java(主页)
public class FirstFragment extends Fragment { private TabLayout tabLayout; private ViewPager firstViewPager; public FirstFragment() { // required empty public constructor } @Override public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceStatE) { // Inflate the layout for this fragment View rootView = inflater.inflate(R.layout.fragment_first,container,falsE); firstViewPager = (ViewPager) rootView.findViewById(R.id.viewpager_content); tabLayout = (TabLayout) rootView.findViewById(R.id.tabs); tabLayout.setupWithViewPager(firstViewPager); setupViewPager(firstViewPager); return rootView; } private void setupViewPager(ViewPager viewPager) { TabViewPagerAdapter adapter = new TabViewPagerAdapter(getActivity().getSupportFragmentManager()); adapter.addFragment(new Tab1Fragment(),"Tab 1"); adapter.addFragment(new Tab1Fragment(),"Tab 2"); adapter.addFragment(new Tab1Fragment(),"Tab 3"); adapter.addFragment(new Tab1Fragment(),"Tab 4"); viewPager.setAdapter(adapter); } }@H_944_2@问题 @H_944_2@>我做错了什么?
private void setupViewPager(ViewPager viewPager) { TabViewPagerAdapter adapter = new TabViewPagerAdapter(getChildFragmentManager()); ... ... viewPager.setAdapter(adapter); }@H_944_2@这应该按预期工作.
以上是大佬教程为你收集整理的android – 底部导航片段内的Tab片段全部内容,希望文章能够帮你解决android – 底部导航片段内的Tab片段所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。