【问题标题】:custom android navigation drawer自定义 android 导航抽屉
【发布时间】:2015-09-01 15:08:27
【问题描述】:

我想使用导航抽屉创建一个 Android 应用,例如 Google 地图、Gmail ecc。我知道如何意识到这一点,但我想要一些不同的东西。我希望导航栏没有完全隐藏,但它必须始终显示图标。

有可能实现这一点吗?谢谢

【问题讨论】:

    标签: android navigation drawer


    【解决方案1】:

    这可以使用 SlidingPaneLayout (https://developer.android.com/reference/android/support/v4/widget/SlidingPaneLayout.html) 而不是 NavigationDrawer 来实现。

    这是一个 SlidingPaneLayout 的例子: http://blog.sqisland.com/2015/01/partial-slidingpanelayout.html

    【讨论】:

    • 是的,但它不起作用。我正在寻找 Google Patterns 导航抽屉的“迷你变体”。
    • google 没有记录如何使用导航抽屉的迷你变体,所以我使用了滑动面板布局,所以你的答案是完美的。非常感谢。
    【解决方案2】:

    如果你想创建一个导航抽屉,Android 设计库有一个名为 NavigationView 的新组件。 [Refer Link]

    此页面上提供了 Chris Banes 编写的 Android 设计库的精彩教程。 GitHub - Cheesesquare

    如果您希望导航抽屉具有自定义感觉,您可能需要参考 Google I/O 应用。 github.com/google/iosched

    编辑:考虑到您使用 NavigationView 并希望在被选中时使文本透明,请在 /res/color/ 中添加一个新文件。我们将其命名为 nav_item_text.xml

    在其中使用以下内容:

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    
        <!-- Text color when checked -->
        <item android:color="#00000000" android:state_checked="true" />
    
        <!-- Text color when not checked. Modify value to color of primary text. -->
        <item android:color="#212121" />
    </selector>
    

    然后将其添加到您的 NavigationView 布局中:

    app:itemTextColor="@color/nav_item_text"
    

    现在看起来像:

    <android.support.design.widget.NavigationView
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/navView"
        android:layout_height="match_parent"
        android:layout_width="wrap_content"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:itemTextColor="@color/nav_item_text"
        app:headerLayout="@layout/nav_header"
        app:menu="@menu/nav"/>
    

    如果你想让文本永远消失:

    app:itemTextColor="#00000000"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-20
      • 1970-01-01
      • 2023-03-08
      • 2020-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-30
      相关资源
      最近更新 更多