android - 缩小抽屉导航中部分元素的textSize

标签 android android-layout navigation-drawer

我的 NavigationDrawer 看起来像这样:screenshot

我想减少类别标签之间的空间并减少它们的 textSize,以便它们看起来更像一个列表并且占用更少的空间。我该怎么做?

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>

最佳答案

在 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>

在你的 NavigationView 中:

<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"
     />

关于android - 缩小抽屉导航中部分元素的textSize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43897399/

相关文章:

android - 在不使用蜂窝塔的情况下在两部智能手机之间进行通信 - 点对点

java - 在按钮中使用 onClick 来查看

android - 如何停止在多个 Activity 中使用的抽屉导航 Activity 中选中项目的点击事件

android - 如何在同一个应用程序中创建抽屉导航和底部栏

java - 切换到横向布局时应用程序崩溃

android - 在某些设备中以编程方式获取 Null 或 Blank 设备的电话号码

android - 用于更改行和列跨度的 RecyclerView 布局管理器

android - 在抽屉导航中添加 2 个 ListView ,只有一个有效

android - 如何使用 crystax-NDK 和 autotools 交叉编译 gperftools for android?

android - 在哪里可以找到适用于 Android 的移动网络应用程序的 CSS 主题?