【问题标题】:change automatically select for bottonavigation selected自动更改选择底部导航选择
【发布时间】:2020-04-02 01:47:54
【问题描述】:

我正在处理这段代码

private void setupViews(){
    frameLayout = (FrameLayout) findViewById(R.id.frame_id);
    bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottom_nav_id);
    getSupportFragmentManager().beginTransaction().replace(R.id.frame_id,new ProfileFragment()).commit();
}

@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
    int navID = menuItem.getItemId();
    switch (navID){
        case R.id.home:
            getSupportFragmentManager().beginTransaction().replace(R.id.frame_id,new HomeFragment()).commit();
            break;
        case R.id.search:
            getSupportFragmentManager().beginTransaction().replace(R.id.frame_id,new SearchFragment()).commit();
            break;
        case R.id.profile:
            getSupportFragmentManager().beginTransaction().replace(R.id.frame_id,new ProfileFragment()).commit();
            break;
    }
    return true;
}

当我启动我的应用程序时,它会自动进入第一个底部(我有 3 个底部) 我想将其更改为导航视图中的第二个底部。请帮帮我

【问题讨论】:

  • "它会自动进入第一个底部(我有 3 个底部)" 当您说“底部”时,您指的是什么?看起来您的代码正在尝试在启动时使用ProfileFragment。这是你想要的吗?
  • 你在哪里打电话setupViews()
  • 在这里查看我的答案:stackoverflow.com/questions/60536213/…

标签: android android-studio android-bottomnavigationview


【解决方案1】:

试试这个:

bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottom_nav_id);
bottomNavigationView.setSelectedItemId(R.id.search);
getSupportFragmentManager().beginTransaction().replace(R.id.frame_id,new SearchFragment()).commit();

【讨论】:

  • 谢谢
【解决方案2】:

@iamhanniballake

我在主要活动中调用 setupViews() 我有 3 个底 -1-2-3- 当我的应用程序运行带有底部导航视图的打开片段时 它自动选择了 3 我想把它改成 2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    • 2019-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多