导航抽屉:替换另一个片段后更改所选项目

时间:2016-12-02 13:44:23

标签: android-studio

我使用Android默认导航抽屉活动。假设我有片段A和片段B,片段A中有一个按钮,单击按钮后它将从片段A重定向(替换)到片段B. 但导航抽屉中的所选项目仍然突出显示片段A.是否有任何方法可以更改它以突出显示片段B而不是A?

@覆盖     public void onClick(查看v){

    if(carplate.getText().toString().equals("")){Toast.makeText(getActivity(),"Please enter your car plate number",Toast.LENGTH_SHORT).show();}
    else{
    Status status = new Status();
    FragmentManager fragmentManager = getFragmentManager();
    android.support.v4.app.FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
    fragmentTransaction.replace(R.id.content_frame,status);
    fragmentTransaction.addToBackStack(null);
    fragmentTransaction.commit();
    }
}

此功能位于片段A I need the selected item automatic change to fragment B(Status) after i pressed the button in fragment A.

1 个答案:

答案 0 :(得分:0)

是的,这很容易 首先,您必须获取导航视图,然后根据从0开始的项目索引从该导航视图和高光/显示选择中获取菜单。将以下代码行放在onclick方法中。

NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.getMenu().getItem(0).setChecked(true);

如果要打开片段,请使用以下代码行和代码行

getSupportFragmentManager().beginTransaction()
     .replace(R.id.mainFragment,new yourNewFragment()).commit()

我希望这有助于