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);
}
});