Más de 3 elementos en la barra de navegación inferior android
Soy nuevo en android y estoy tratando de hacer una aplicación con más de 3 elementos en la barra de navegación inferior. Puedo mostrarlos, pero se están agrupando al final y sólo tres son visibles correctamente. Aquí está mi código:
<android.support.design.widget.BottomNavigationView android:id="@+id/bottomNavigation" android:layout_width="wrap_content" android:layout_height="wrap_content" android:elevation="15dp" android:layout_gravity="bottom" android:layout_alignParentBottom="true" app:menu="@menu/bottom_nav_items" />
Aquí está la imagen de la vista: Esta es la instantánea
- ¿Cómo puedo añadir elevación (sombra) a mi BottomNavigationView. No viene por defecto
- Desmarque TODOS los elementos de BottomNavigationView sin elemento ficticio o Reflexión
- Establecer el elemento seleccionado en Android BottomNavigationView
- Establecer el ítem / id de elementos inicialmente seleccionado en BottomNavigationView
- Cambiar el tamaño del icono de BottomNavigationView
Estoy atascado por favor ayuda ..
- Android: Vista inferior de navegación - cambia el icono del elemento seleccionado
- Cómo ocultar el BottomNavigationView debajo del teclado con el conjunto adjustResize
- Cómo eliminar la animación de iconos para la vista de navegación inferior en android
- Cómo deshabilitar BottomNavigationView modo de cambio?
- Recyclerview cubierto por BottomNavigationView
- Cambio de color de fondo en BottomNavigationView
- Eliminar etiquetas BottomNavigationView
- ¿Por qué Android BottomNavigationView no aparece?
No estoy seguro, pero a mi conocimiento, no es posible acompañar más de 3 elementos usando la barra inferior, sin distorsionar la alineación. Lo que puede hacer de todos modos es hacer un diseño lineal con orientación horizontal, y en ese conjunto los iconos como vistas de la imagen y luego hacer su peso como 1.
Aquí está el código,
<LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:gravity="center" android:layout_alignParentBottom="true" android:background="#fff"> <ImageView android:layout_width="25dp" android:layout_height="25dp" android:src="(YOUR IMAGE SOURCE)" android:layout_centerVertical="true" android:layout_centerHorizontal="true" android:layout_weight="1"/>
Y luego otras vistas de imagen como esta.
Puede utilizar el método siguiente para no obtener elementos de menú en clúster. Tienes que llamar a este método en el método onCreate que pasa BottomNavigationView.
// Method for disabling ShiftMode of BottomNavigationView private void disableShiftMode(BottomNavigationView view) { BottomNavigationMenuView menuView = (BottomNavigationMenuView) view.getChildAt(0); try { Field shiftingMode = menuView.getClass().getDeclaredField("mShiftingMode"); shiftingMode.setAccessible(true); shiftingMode.setBoolean(menuView, false); shiftingMode.setAccessible(false); for (int i = 0; i < menuView.getChildCount(); i++) { BottomNavigationItemView item = (BottomNavigationItemView) menuView.getChildAt(i); item.setShiftingMode(false); // set once again checked value, so view will be updated item.setChecked(item.getItemData().isChecked()); } } catch (NoSuchFieldException e) { Log.e("BNVHelper", "Unable to get shift mode field", e); } catch (IllegalAccessException e) { Log.e("BNVHelper", "Unable to change value of shift mode", e); } }
- Cordova cámara plugin, obtener la ruta de la imagen completa de la galería
- Creación del perfil de Android vpn