我收到运行时错误,Android应用程序正在停止
android.view.InflateException:二进制XML文件行#9:二进制XML文件行#9:错误膨胀类android.support.design.widget.NavigationView
引起:android.view.InflateException:二进制XML文件行#9:错误膨胀类android.support.design.widget.NavigationView
引起:android.view.InflateException:二进制XML文件行#25:二进制XML文件行#25:您必须提供layout_width属性。 引起:java.lang.UnsupportedOperationException:二进制XML文件行#25:您必须提供layout_width属性。
这是我的xml代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="com.example.xxx.xxx.Main_Tab"
>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" >
<include
layout="@layout/app_bar"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.design.widget.NavigationView>
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/nav_view"
android:background="#00BCD4"
android:minHeight="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>
<android.support.v4.view.ViewPager
android:id="@+id/pager1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/tab_layout1"/>
</RelativeLayout>
这是app_bar.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.example.xxx.xxx.Main_Tab">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="#8BC34A"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<FrameLayout
android:id="@+id/frame"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"> </FrameLayout>
</android.support.design.widget.CoordinatorLayout>
这里是代码activity_main_drawer
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
>
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_home"
android:icon="@drawable/ic_home_black_24dp"
android:title="@string/nav_home" />
<item
android:id="@+id/nav_notifications"
android:icon="@drawable/ic_notifications_black_24dp"
android:title="@string/nav_notifications" />
</group>
<item android:title="Other">
<menu>
<item
android:id="@+id/nav_about_us"
android:title="@string/nav_about_us" />
<item
android:id="@+id/nav_privacy_policy"
android:title="@string/privacy_policy" />
</menu>
</item>
</menu>
答案 0 :(得分:0)
你的布局似乎很好。但是你已经在这个布局中包含了一些布局。
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer"
<include
layout="@layout/app_bar"
android:layout_width="match_parent"
android:layout_height="match_parent" />
很可能您在android:layout_width
,@layout/app_bar
,@layout/nav_header_main
中的任何一个布局都缺少@menu/activity_main_drawer
属性。