标签: android-navigationview

更改NavigationView分隔线颜色和子标题文本颜色

我正在使用android studio navigationview。
但是我将Navigationview的颜色背景更改为黑色,
并且子标题的分隔线消失了(因为分隔线也是黑色的)。
子标题标题也消失了。

有没有办法将这些属性更改为白色或任何颜色?
这是菜单的XML。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <group
        android:id="@+id/nav_header"
        android:checkableBehavior="single">
        <item
            android:id="@+id/nav_home"
            android:checked="true"
            android:icon="@drawable/ic_home_black_24dp"
            android:title="Home" />
        <item
            android:id="@+id/nav_search"
            android:icon="@drawable/ic_search_black"
            android:title="Search Location" />
        <item
            android:id="@+id/nav_fav"
            android:icon="@drawable/ic_favorite"
            android:title="Favorites" />
        <item
            android:id="@+id/nav_recent"
            android:icon="@drawable/ic_nav_route"
            android:title="Recent Location" />
        <item
            android:id="@+id/nav_route"
            android:icon="@drawable/ic_place"
            android:title="Route" />
    </group>


    <item
        android:id="@+id/navigation_subheader"
        android:title="Others">
        <menu>
            <item
                android:id="@+id/nav_settings"
                android:checkable="true"
                android:icon="@drawable/ic_settings"
                android:title="Settings" />
            <item
                android:checkable="true"
                android:id="@+id/nav_about"
                android:icon="@android:drawable/ic_menu_send"
                android:title="About" />
        </menu>
    </item>

</menu>
Run Code Online (Sandbox Code Playgroud)

谢谢!

android navigation-drawer android-navigationview

1
推荐指数
1
解决办法
5925
查看次数

onNavigationItemSelected在NavigationView中不起作用

请有人帮我处理导航抽屉中的碎片,由于某种原因我无法让他们工作,所有代码看起来都正确.

是源代码的链接.

android android-fragments android-navigationview

1
推荐指数
4
解决办法
1万
查看次数

TabLayout指示符在选项卡和内容之间挂起

我的应用程序有一个activitywith NavigationView和for导航抽屉中的不同项目UI通过更改来更改fragment.其中一个这样的片段已经TabLayout实现了.

当应用程序启动时fragment,TabLayout加载并且它工作正常,但是当我在其中的不同项目之间切换navigation drawer然后返回到具有该项目的项目时TabLayout,现在在滑动选项卡时,指示器卡在选项卡和一个选项卡上的内容之间甚至没有显示.我不清楚我可能犯了什么错误.我在用

compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support:design:24.2.1'
compile 'com.android.support:support-v4:24.2.1'
Run Code Online (Sandbox Code Playgroud)

这是具有NavigationView(activity_start.xml)的活动

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    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_start"
        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"
        app:headerLayout="@layout/nav_header_start"
        app:menu="@menu/start_menu" />

</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)

这是app_bar_start.xml的代码

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout 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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context="com.optimilia.readaloud.Start">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay"
        app:elevation="0dp">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay"/>

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

    <FrameLayout
        android:id="@+id/frame"
        android:layout_width="match_parent" …
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-tablayout android-navigationview

1
推荐指数
1
解决办法
1372
查看次数

NavigationView onNavigationItemSelected 不起作用

我一直试图让我的导航抽屉事件正常工作,但你猜对了,它不会。因为每次我点击导航抽屉中的一个项目时都不会触发任何东西。我也在这里尝试了一些帮助,但无济于事。

活动_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.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" />

    <com.google.android.material.navigation.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:background="@drawable/sidebar_bg_fainted"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer" />

</androidx.drawerlayout.widget.DrawerLayout>

Run Code Online (Sandbox Code Playgroud)

主活动.java

package com.example.airtimeflip;

import android.os.Bundle;

import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.snackbar.Snackbar;

import android.view.MenuItem;
import android.view.View;

import androidx.annotation.NonNull;
import androidx.core.view.GravityCompat;
import androidx.navigation.NavController;
import androidx.navigation.Navigation;
import androidx.navigation.ui.AppBarConfiguration;
import androidx.navigation.ui.NavigationUI;

import com.google.android.material.navigation.NavigationView;

import androidx.drawerlayout.widget.DrawerLayout;

import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import androidx.recyclerview.widget.RecyclerView;

import android.view.Menu;
import android.widget.Toast;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener …
Run Code Online (Sandbox Code Playgroud)

android android-studio navigation-drawer android-navigationview

0
推荐指数
1
解决办法
2895
查看次数

如何修复错误膨胀类 android.support.design.widget.NavigationView

我有问题,我找不到解决方案!我在 XML 中使用:

<?xml version="1.0" encoding="utf-8"?>

    <androidx.drawerlayout.widget.DrawerLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:tools="http://schemas.android.com/tools"
      xmlns:app="http://schemas.android.com/apk/res-auto"
      android:id="@+id/activity_main"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      tools:context="com.example.libraryproject.MainActivity"
      android:background="@android:color/holo_green_dark">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">


        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Main"
            android:textSize="50dp"
            android:id="@+id/textView"
            android:layout_marginTop="200dp"
            android:layout_marginLeft="130dp"/>


    </RelativeLayout>

    <android.support.design.widget.NavigationView ------! #32
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        app:menu="@menu/navigation_menu"
        android:layout_gravity="start"
        app:headerLayout="@layout/navigation_header"
        android:id="@+id/nv">
    </android.support.design.widget.NavigationView>

</androidx.drawerlayout.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)

错误显示是:android.view.InflateException: Binary XML file line #32: Binary XML file line #32: Error inflating class android.support.design.widget.NavigationView

在应用程序中: 应用页面

java android android-navigationview material-components-android androidx

0
推荐指数
1
解决办法
5235
查看次数