bookAppoinmentBtn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(final View view) {
        MyapptsFragment myaaptsFragment = new MyapptsFragment();
        AppCompatActivity activity = (AppCompatActivity) view.getContext();
        activity.getSupportFragmentManager()
            .beginTransaction()
            .replace(R.id.frameLayout,myaaptsFragment)
            .addToBackStack(null)
            .commit();
    }
});

在这里,我单击按钮时要更改片段。单击按钮时,我要更改片段以及该片段的底部导航项颜色。

最佳答案

您可以使用bottomNavigationView.setSelectedItemId()


  设置所选的菜单项ID。这与点击项目的行为相同。


样本代码

    bookAppoinmentBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(final View view) {
            MyapptsFragment myaaptsFragment = new MyapptsFragment();
            AppCompatActivity activity = (AppCompatActivity) view.getContext();
            activity.getSupportFragmentManager().beginTransaction().replace(R.id.frameLayout, myaaptsFragment).addToBackStack(null).commit();
           ((MyActivity)getActivity()).changeMenu(R.id.action_settings);

        }
    });


编辑

在您的活动中创建一个这样的方法

  public void changeMenu(int menuId){
        bottomNavigationView.setSelectedItemId(menuId);
    }


比在setOnClickListener中这样调用

myImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                ((MyActivity)getActivity()).changeMenu(R.id.action_settings);

            }
        });

08-18 16:44
查看更多