我正在做一个安卓项目,我正在使用底部的导航栏与活动.当我点击导航栏按钮时,它工作得非常好,但当我启动应用程序时,它显示我只是一个导航栏.我希望第一个导航栏选项应该显示,只要我启动应用程序,但它没有发生.请帮助我。
如果你在底部导航栏中使用碎片实例化,你只需要在onCreate方法中实例化碎片,并使用底部导航栏监听器来使用它来处理点击监听器。
在这个演示中,我有一个导航栏,正在使用监听器初始化,之后,在onCreate中,我实例化了片段,当片段创建时显示。
public class MainActivity extends AppCompatActivity {
ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
BottomNavigationView bottomNav = findViewById(R.id.bottom_navigation_bar);
bottomNav.setOnNavigationItemSelectedListener(navListener);
viewPager = findViewById(R.id.view_pager);
PagerAdapter pagerAdapter = new PagerAdapter(getSupportFragmentManager(), tabLayout.getTabCount());
viewPager.setAdapter(pagerAdapter);
private BottomNavigationView.OnNavigationItemSelectedListener navListener = new BottomNavigationView.OnNavigationItemSelectedListener() {@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
Fragment selectedFragment = null;
switch (item.getItemId()) {
case R.id.home_nav:
selectedFragment = new HomeFragment();
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, selectedFragment).commit();
break;
case R.id.explore_nav:
selectedFragment = new ExploreFragment();
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, selectedFragment).commit();
break;
}
return true;
}
};
selectedFragment = new HomeFragment();
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, selectedFragment).commit();