首页 > 解决方案 > 将导航视图上的项目设置为从片段中选择

问题描述

当移动到不同的片段时,我希望导航菜单中的相应项目被突出显示。这应该从片段本身完成。以下是片段中的代码:

  saveButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            dispName = dispNameET.getText().toString();
            myRef.setText(dispName);

            //going to another fragment
            Fragment fragment = new ListFragment();
            FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
            FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
            fragmentTransaction.replace(R.id.frame_layout, fragment);
            fragmentTransaction.commit();


        }
    });

在此之后,导航视图将错误的项目显示为突出显示。请帮忙

标签: androidandroid-navigationview

解决方案


您的代码应如下所示

saveButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        dispName = dispNameET.getText().toString();
        myRef.setText(dispName);

        //going to another fragment
        Fragment fragment = new ListFragment();
        FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        fragmentTransaction.replace(R.id.frame_layout, fragment);
        fragmentTransaction.commit();
        NavigationView navigationView = (NavigationView) getActivity().findViewById(R.id./*id of nav bar*/);
        navigationView.setCheckedItem(R.id./*id of menu item to be highlighted*/);
    }
});

推荐阅读