Grabación de la barra de herramientas en la barra de herramientas extendida

Im que intenta fijar la posición de mi icono trasero de la navegación en mi barra de herramientas extendida como sigue:

<android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toolbar" android:layout_height="wrap_content" android:layout_width="match_parent" app:theme="@style/Toolbar" android:minHeight="@dimen/action_bar_height" app:buttonGravity="top" android:gravity="top" android:background="?attr/colorPrimary" /> 

Comprobando las fuentes de la barra de herramientas podemos ver lo siguiente:

 private void ensureNavButtonView() { if (mNavButtonView == null) { mNavButtonView = new ImageButton(getContext(), null, R.attr.toolbarNavigationButtonStyle); final LayoutParams lp = generateDefaultLayoutParams(); lp.gravity = GravityCompat.START | (mButtonGravity & Gravity.VERTICAL_GRAVITY_MASK); mNavButtonView.setLayoutParams(lp); } } 

Donde mButtonGravity se asigna mediante

 mButtonGravity = a.getInteger(R.styleable.Toolbar_buttonGravity, Gravity.TOP); 

Así que leyendo esto correctamente, la gravedad de mi barra de herramientas ya debería ser Gravity.TOP si no hay nada configurado. Sin embargo, se ve así:

Introduzca aquí la descripción de la imagen

Jugué un poco y probé un par de combinaciones y puedo decir que la gravedad del botón y el android:minHeight no quieren ser amigos.

Esto debería funcionar bien:

 <android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toolbar" android:layout_height="@dimen/action_bar_height" android:layout_width="match_parent" app:theme="@style/Toolbar" android:minHeight="?attr/actionBarSize" android:gravity="top" android:background="?attr/colorPrimary" /> 

Si desea que el icono en la parte superior y el título en la parte inferior se puede intentar algo como esto:

 <Toolbar android:id="@+id/toolbar" android:layout_height="128dp" android:layout_width="match_parent" android:minHeight="?attr/actionBarSize" android:background="?attr/colorPrimary" android:gravity="bottom" /> 

Utilizando el atributo android:minHeight como el estándar actionBarSize, los botones y acciones se colocan en la parte superior. Mientras usa el atributo android:gravity , puede establecer la posición del título en la parte inferior.

  • El widget Android AppBarLayout siempre aparece en la parte superior
  • ¿Es posible tener ScrollingViewBehavior combinado con el comportamiento de Snackbar?
  • CollapsingToolbarLayout título como elemento compartido de transición
  • Android Lollipop Toolbar vs vista personalizada
  • Barra de herramientas con modo de pantalla completa inmersiva
  • Barra de herramientas dentro de CardView para crear un menú emergente (icono de desbordamiento)
  • Nuevo error de la biblioteca de diseño de Android con AppBarLayout y barra de herramientas
  • Cambiar la barra de herramientas al icono del cajón / menú después de popBackStack ()?
  • Cómo ocultar la barra de herramientas en un ViewPager al usar Scrolling RecyclerView?
  • AppBarLayout extrañamente toma espacio y empuja el contenido hacia abajo
  • Desactivar el cajón de navegación del fragmento
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.