Не понятно как это происходит именно в BottomNavigationView. Хотелось бы узнать у более опытных. Язык программирования использую Java. А также как регулировать расстояние между иконками(кнопками) в BottomNavigationView.
Для того, чтоб заполнить ваш BottomNavigationView, для начала в макете укажите для BottomNavigationView откуда брать ресурсы с элементами меню при помощи атрибута app:menu:
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottom_navigation_view"
...
app:menu="@menu/bottom_navigation_menu" />
Ваш bottom_navigation_menu.xml с описанным меню может выглядеть так:
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_first"
android:enabled="true"
android:icon="@drawable/ic_first"
android:title="@string/text_first"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_second"
android:enabled="true"
android:icon="@drawable/ic_second"
android:title="@string/text_second"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_third"
android:enabled="true"
android:icon="@drawable/ic_third"
android:title="@string/text_third"
app:showAsAction="ifRoom" />
</menu>
Этого достаточно, чтоб наполнить BottomNavigationView кнопками. Обработка нажатий кнопок будет происходит следующим образом:
BottomNavigationView bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottom_navigation_view);
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.action_first:
break;
case R.id.action_second:
break;
case R.id.action_third:
break;
}
return true;
}
});
Расстояние между иконками контролирует сам BottomNavigationView. Когда количество элементов меню больше трёх, скрываются подписи всех элементов, кроме выбранного. Так же учтите, что максимальное возможное количество элементов равно 5.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей