/res/layout/activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="iterator.ir.a053.MainActivity"> <android.support.design.widget.BottomNavigationView android:id="@+id/bottomNavigationView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" app:itemBackground="@android:color/holo_green_light" app:itemIconTint="@android:color/white" app:itemTextColor="@android:color/black" app:menu="@menu/navigation_menu"> </android.support.design.widget.BottomNavigationView> </RelativeLayout>
/res/menu/navigation_menu.xml
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/itemAdd" android:checkable="false" android:enabled="true" android:icon="@drawable/ic_add" android:title="Add" android:visible="true" app:showAsAction="ifRoom" /> <item android:id="@+id/itemEdit" android:checkable="false" android:enabled="true" android:icon="@drawable/ic_edit" android:title="Edit" android:visible="true" app:showAsAction="ifRoom" /> <item android:id="@+id/itemDelete" android:checkable="false" android:enabled="true" android:icon="@drawable/ic_delete" android:title="Delete" android:visible="true" app:showAsAction="ifRoom" /> </menu>
/res/drawable/nav_item_color_state.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@color/white" android:state_enabled="true" /> <item android:drawable="@color/gray" android:state_enabled="false" /> </selector>
MainActivity.java
public class MainActivity extends AppCompatActivity { BottomNavigationView bottomNavigationView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); bottomNavigationView= (BottomNavigationView) findViewById(R.id.bottomNavigationView); bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { item.setChecked(true); switch (item.getItemId()) { case R.id.itemAdd: Toast.makeText(MainActivity.this,"Add",Toast.LENGTH_SHORT).show(); break; case R.id.itemEdit: Toast.makeText(MainActivity.this,"Edit",Toast.LENGTH_SHORT).show(); break; case R.id.itemDelete: Toast.makeText(MainActivity.this,"Delete",Toast.LENGTH_SHORT).show(); break; } return true; } }); } }
References
https://github.com/mhdr/AndroidSamples/tree/master/053
https://www.youtube.com/watch?v=wcE7IIHKfRg
https://developer.android.com/reference/android/support/design/widget/BottomNavigationView.html
https://medium.com/@hitherejoe/exploring-the-android-design-support-library-bottom-navigation-drawer-548de699e8e0#.8sgxtnkhb