【问题标题】:How to add 'new' text in navigation drawer item? [closed]如何在导航抽屉项目中添加“新”文本? [关闭]
【发布时间】:2017-12-13 13:00:56
【问题描述】:

我有一个导航抽屉,我想在导航抽屉中的项目之外添加一个“新”文本,就像这个 gmail 应用导航抽屉一样。

我只想添加文本,我不想让它变得实用或更复杂。 请建议我如何实现这一目标。

提前致谢!!

这是我在activity_main.xml中的DrawerLayout

<?xml version="1.0" encoding="utf-8"?>
<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/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        android:background="@color/white"
        app:itemTextColor="@color/nav_color"
        app:itemIconTint="@color/nav_color"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer"
        />

</android.support.v4.widget.DrawerLayout>

activity_main_drawer.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:id="@+id/nav_home"
        android:icon="@drawable/home"
        android:title="Home"/>

    <item android:title="EXPLORE">
        <menu>
            <item
                android:id="@+id/nav_FeaturedListing"
                android:icon="@drawable/feature_icon"
                android:title="Featured Listings" />
            <item
                android:id="@+id/nav_food"
                android:icon="@drawable/food"
                android:title="Restaurants/Dining" />

            <item
                android:id="@+id/nav_bars"
                android:icon="@drawable/bars"
                android:title="Bars/Nightlife"
                />
            <item
                android:id="@+id/nav_hotelnlodging"
                android:icon="@drawable/hotel"
                android:title="Hotels/Lodging" />
            <item
                android:id="@+id/nav_taxi"
                android:icon="@drawable/taxi_icon"
                android:title="Taxis/Tour Guide" />
            <item
                android:id="@+id/nav_tours"
                android:icon="@drawable/tour"
                android:title="Tour Operators" />
            <item
                android:id="@+id/nav_fun"
                android:icon="@drawable/fun"
                android:title="Entertainment" />
        </menu>
    </item>

    <group>
        <item
            android:id="@+id/nav_favorites"
            android:icon="@drawable/favorite"
            android:title="Bookmarks" />
        <item
            android:id="@+id/nav_deals"
            android:icon="@drawable/deal"
            android:title="Deals &amp; Promotions" />
        <item
            android:id="@+id/nav_blog"
            android:icon="@drawable/blog"
            android:title="Blog" />
        <item
            android:id="@+id/nav_vlogs"
            android:icon="@drawable/vlog"
            android:title="Vlogs/Videos"
            />
        <item
            android:id="@+id/nav_points"
            android:icon="@drawable/points"
            android:title="Dashboard" />
    </group>




    <item android:title="Login &amp; Contact">
            <menu>
                <item
                    android:id="@+id/nav_profile"
                    android:icon="@drawable/profile"
                    android:title="My Profile" />
                <item
                    android:id="@+id/nav_social"
                    android:icon="@drawable/social_icon"
                    android:title="Connect With Us"/>
                <item
                    android:id="@+id/nav_feedback"
                    android:icon="@drawable/feedback"
                    android:title="Feedback"/>
                <item
                    android:id="@+id/nav_contact"
                    android:icon="@drawable/contact"
                    android:title="Contact" />

                <item
                    android:id="@+id/nav_help"
                    android:icon="@drawable/question"
                    android:title="Help"
                    ></item>
            </menu>
        </item>

</menu>

我想在项目中添加“新”文本。

【问题讨论】:

  • 请在此处粘贴您的代码。
  • 您可以将 NavigationView 替换为片段,并使用 recyclerview 显示抽屉项目。你可以用任何你想要的方式设计项目。
  • 感谢 Guruji 和 @WOLF.L 我已经添加了代码,请看一下。

标签: android navigation-drawer navigationitem


【解决方案1】:

您可以创建自定义行,在 DrawerLayout 内部采用 LinearLayout,在右侧采用 TextView,并将背景颜色和文本颜色设置为 TextView。

创建此 TextView 的全局实例,我建议创建您的活动的 BaseClass,然后您更新此 TextView 的计数。

如果您想了解更多信息,请发布您的代码 sn-p 以指导您完成相同的操作。

【讨论】:

  • 我已经添加了代码。你能给我一些关于这个的代码吗。非常感谢你的评论
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多