Navegación de Cajón es muy amplia
-
21-12-2019 - |
Pregunta
He implementado cajón de Navegación similar a la Android Deslizamiento uso del Menú de Navegación de Cajón.La diapositiva del menú está llegando correctamente, pero muy ancho (El ancho es muy largo)..Cuando reviso en mi Teléfono/FICHA es muy largo, tanto en el retrato y modo de paisaje.Es casi tocar el otro lado de la pantalla.Algo así como una pantalla completa.
Cuando ejecuto el proyecto dado en AndroidHive.Las cosas están bien.Yo sólo he sintonizado el XML a los requisitos que es de todos
Aquí está el cajón de la lista XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:background="@drawable/list_selector" >
<ImageView
android:id="@+id/icon"
android:layout_width="25dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:contentDescription="@string/desc_list_item_icon"
android:src="@drawable/maps" />
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toRightOf="@id/icon"
android:gravity="center_vertical"
android:minHeight="?android:attr/listPreferredItemHeightSmall"
android:paddingRight="40dp"
android:textAppearance="?android:attr/textAppearanceListItemSmall"
android:textColor="@color/list_item_title" />
<TextView
android:id="@+id/counter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="8dp"
android:background="@drawable/roundcircle"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:paddingTop="4dp"
android:textColor="@color/counter_text_color"
android:textStyle="bold" />
</RelativeLayout>
Este es ListView.XML que tiene la Diapositiva ListView
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<FrameLayout
android:id="@+id/frame_container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ListView
android:id="@+id/left_drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="@color/list_background"
android:choiceMode="singleChoice"
android:divider="@color/list_divider"
android:dividerHeight="1dp"
android:listSelector="@drawable/list_selector" />
</android.support.v4.widget.DrawerLayout>
No estoy seguro de donde yo estoy mal?
Solución
No ha especificado el ancho adecuado para su NavigationDrawer
.Si establece el ancho de match_parent
será - como el nombre implica - a ser tan grande como la de los padres.Y usted no quiere que el NavigationDrawer
para ser tan grande como la pantalla, por lo que especificar una anchura de alrededor de 240dp
.Intentar algo como esto:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/frame_container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ListView
android:id="@+id/left_drawer"
android:layout_width="match_parent"
android:layout_height="240dp"
android:layout_gravity="start"
android:background="@color/list_background"
android:choiceMode="singleChoice"
android:divider="@color/list_divider"
android:dividerHeight="1dp"
android:listSelector="@drawable/list_selector" />
</android.support.v4.widget.DrawerLayout>
Otros consejos
El ListView
debe tener un ancho menor.Trate de android:layout_width="240dp"
.
Esto es, básicamente, basado en la guía oficial: http://developer.android.com/training/implementing-navigation/nav-drawer.html
Mi sugerencia:El doble check de tutorías con la documentación oficial :)