Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Diseño del material: los márgenes izquierdos para el título y el contenido de la barra de acción no coinciden

Estoy tratando de establecer márgenes de pantalla siguiendo las directrices para el diseño – métricas y líneas clave . Específicamente, el contenido de la lista en pantallas móviles debe tener un margen de 72 dp y alinearse con el título como se muestra en la guía:

Introduzca aquí la descripción de la imagen

  • ¿El registro reduce la velocidad de una aplicación de producción de Android?
  • ¿Cuál es la mejor manera de conectarse entre la base de datos de android y oracle?
  • define la constante que debe ser utilizada por todas las actividades en una aplicación: android
  • Publicar aplicación de Android con tablas de clasificación y sin logros
  • ¿Cómo puedo hacer que un SurfaceView sea más grande que la pantalla?
  • Android, ¿hay algún método para dejar que el servicio de retraso o dormir?
  • Como Android Studio genera automáticamente valores de margen en el archivo res / dimens.xml, pensé que conseguiría que mi contenido se alineara con el título añadiendo mi propio margen interno:

    Dimens.xml

    <resources> <!-- Default screen margins, per the Android Design guidelines. --> <dimen name="activity_horizontal_margin">16dp</dimen> <dimen name="activity_vertical_margin">16dp</dimen> <!-- 16 + 56 = 72 = "Content left margin from screen edge" --> <dimen name="content_horizontal_margin">56dp</dimen> </resources> 

    Myactivity.xml

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin"> <TextView android:id="@+id/tvEditPlaylistInfo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="@dimen/content_horizontal_margin" android:textAppearance="?android:attr/textAppearanceMedium" android:text="test" /> <ImageButton android:layout_width="36dp" android:layout_height="36dp" android:src="@drawable/action_current" android:layout_alignBottom="@id/tvEditPlaylistInfo" android:layout_toRightOf="@id/tvEditPlaylistInfo" android:layout_marginLeft="16dp"/> <ListView android:id="@+id/lvAudioFiles" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/content_horizontal_margin" android:layout_below="@id/tvEditPlaylistInfo"> </ListView> </RelativeLayout> 

    Pero de alguna manera mi contenido está "apagado" por cerca de 8dp (emulador, Lollipop 22).

    Introduzca aquí la descripción de la imagen

    Estoy usando un tema personalizado con el padre Theme.AppCompat.Light.DarkActionBar pero sólo cambié los colores por lo que creo que no es la fuente de mi problema.

    ¿Qué me estoy perdiendo?

  • Coloque el cajón de navegación debajo de la barra de estado
  • ¿Quitar la barra de desplazamiento del cajón de navegación de diseño de soporte de Android?
  • ¿Por qué no hay captura de pantalla en aplicaciones recientes al finalizar la actividad en firebase onAuthStateChanged
  • Cómo escribir un informe de errores de Android en un archivo a través de ADB?
  • ¿Cómo evitar la vista superpuesta en el diseño relativo en android?
  • Temporizador de TextView de Android
  • One Solution collect form web for “Diseño del material: los márgenes izquierdos para el título y el contenido de la barra de acción no coinciden”

    Quite esto de su TextView y ListView :

     android:layout_marginLeft="@dimen/content_horizontal_margin" 

    Su etiqueta padre ya especifica qué debe ser el relleno:

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin"> 

    La razón por la que está apagado es porque estás relleno, y luego establecer un margen.

    Además, sólo por interés, aquí está la diferencia entre el relleno y el margen .

    ACTUALIZAR

    Según la discusión con @ 0X0nosugar, hemos llegado a un punto en el que el código siguiente ayuda a lograr su objetivo:

    Para modificar la ActionBar, debe agregarse lo siguiente a su onCreate ():

     ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { View customView = getLayoutInflater().inflate(R.layout.custom_action_bar, null); actionBar.setDisplayShowTitleEnabled(false); actionBar.setDisplayShowCustomEnabled(true); actionBar.setCustomView(customView); } 

    Crear una vista personalizada para la barra de herramientas

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:background="@color/accent_deeporangeA400" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="MyMusicApp" android:id="@+id/ab_title" android:layout_centerVertical="true" android:layout_alignParentLeft="true" android:layout_marginLeft="@dimen/activity_horizontal_margin" android:textAppearance="?android:attr/textAppearanceLarge"/> </RelativeLayout> 

    Esto debería ayudarle a alcanzar su objetivo! Buena investigación de su parte!

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.