2017-05-10 1 views
2

meine NavigationDrawer sieht wie folgt aus: screenshotReduzieren Sie die textsize einiger Elemente in der Navigationsleiste

ich den Raum zwischen den Kategorien Etiketten reduzieren wollen und ihre textsize zu reduzieren, so dass sie eher wie eine Liste aussieht und weniger Platz einnehmen . Wie kann ich das machen?

activity_main.xml

<android.support.v4.widget.DrawerLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/drawer_layout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true" 
tools:openDrawer="start"> 

<include 
    layout="@layout/app_bar_main" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"/> 

<android.support.design.widget.NavigationView 
    android:id="@+id/navigation_drawer_container" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_gravity="start"> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical"> 
     <android.support.design.widget.NavigationView 
      android:id="@+id/nav_view" 
      android:layout_width="wrap_content" 
      android:layout_weight="1" 
      android:layout_height="0dp" 
      android:layout_gravity="start" 
      android:fitsSystemWindows="true" 
      app:headerLayout="@layout/nav_header_main" 
      app:menu="@menu/activity_main_drawer"> 

     </android.support.design.widget.NavigationView> 

    </LinearLayout> 


</android.support.design.widget.NavigationView> 

activity_main_drawer.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android"> 

<group android:checkableBehavior="single"> 
    <item 
     android:id="@+id/newest" 
     android:title="@string/nav_newest"/> 
    <item 
     android:id="@+id/highest_rated" 
     android:title="@string/top_rated"/> 
    <item 
     android:id="@+id/earth_view" 
     android:title="@string/Earth_by_satellite"/> 
</group> 

<item android:title="Categories" 
    > 
    <menu> 
     <group android:checkableBehavior="single"> 
      <item 
       android:id="@+id/Abstract" 
       android:title="@string/Abstract"/> 

      <item 
       android:id="@+id/Animal" 
       android:title="@string/Animal"/> 
      <item 
       android:id="@+id/Anime" 
       android:title="@string/Anime"/> 
      <item 
       android:id="@+id/Comics" 
       android:title="@string/Comics"/> 
      <item 
       android:id="@+id/Earth" 
       android:title="@string/Earth"/> 
      <item 
       android:id="@+id/Fantasy" 
       android:title="@string/Fantasy"/> 
      <item 
       android:id="@+id/Man_Made" 
       android:title="@string/Man_Made"/> 
      <item 
       android:id="@+id/Movie" 
       android:title="@string/Movie"/> 
      <item 
       android:id="@+id/Music" 
       android:title="@string/Music"/> 
      <item 
       android:id="@+id/Photography" 
       android:title="@string/Photography"/> 
      <item 
       android:id="@+id/Sci_Fi" 
       android:title="@string/Sci_Fi"/> 
      <item 
       android:id="@+id/Space" 
       android:title="@string/Space"/> 
      <item 
       android:id="@+id/TV_Show" 
       android:title="@string/TV_Show"/> 
      <item 
       android:id="@+id/Vehicles" 
       android:title="@string/Vehicles"/> 
      <item 
       android:id="@+id/Video_Game" 
       android:title="@string/Video_Game"/> 
     </group> 
    </menu> 
</item> 
+0

Verwendung android: textsize = „__dp“ in jedem Element Ihrer activity_main_drawer.xml –

+0

Ich glaube, Sie activity_main.xml beziehen und Ihre Lösung würde die Größe aller Beschriftungen reduzieren. – user11230

+0

Ja können Sie es versuchen –

Antwort

0

Ihre Textgröße in Ihrem style.xml

<style name="NavDrawerTextStyle" parent="Base.TextAppearance.AppCompat"> 
    <item name="android:textColor">@color/colorPrimaryDark</item> 
    <item name="android:textSize">16sp</item> 
    <item name="android:textStyle">bold</item> 
</style> 

in Ihrem NavigationView anpassen :

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/drawer_layout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true" 
tools:openDrawer="start"> 

<android.support.design.widget.NavigationView 
    ... 
    app:itemTextAppearance="@style/NavDrawerTextStyle" 
    /> 
+0

Dies ändert die Textgröße jedes Elements in der Schublade. Ich möchte die ersten beiden Etiketten in normaler Größe behalten. – user11230

Verwandte Themen