activity_home_drawer.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:showIn="navigation_view">
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_home"
android:icon="@drawable/ic_menu_camera"
android:title="@string/menu_home" />
<item
android:id="@+id/nav_gallery"
android:icon="@drawable/ic_menu_gallery"
android:title="@string/menu_gallery" />
<item
android:id="@+id/nav_slideshow"
android:icon="@drawable/ic_menu_slideshow"
android:title="@string/menu_slideshow" />
<item
android:id="@+id/nav_tools"
android:icon="@drawable/ic_menu_manage"
android:title="@string/menu_tools" />
</group>
<item android:title="Communicate">
<menu>
<item
android:id="@+id/nav_share"
android:icon="@drawable/ic_menu_share"
android:title="@string/menu_share" />
<item
android:id="@+id/nav_send"
android:icon="@drawable/ic_menu_send"
android:title="@string/menu_send" />
</menu>
</item>
</menu>
我正在关注YouTube上有关如何为我的android应用创建应用导航抽屉的教程,同时按照已发生的步骤进行操作(请参见上图),我是android编程的新手,所以有人可以告诉我此问题的根本原因是什么以及如何解决?谢谢。
答案 0 :(得分:1)
删除此行
tools:showIn="navigation_view"
答案 1 :(得分:1)
如果我们查看official documentation,它会明确指出tools:showIn
是
打算用于:布局所引用的任何根
<View>
<include>
基本上,tools:showIn
让 Android Studio的布局编辑器知道应将使用它的View
放在哪里。
根据以上说明,我们可以得出tools:showIn
,
<View>
<include>
引用此视图现在,如果您查看源代码,您会发现,
tools:showIn
,而不是该菜单<include>
布局中的activity_home_drawer.xml
navigation_view
。尽管您将无法执行此操作,但它不是<View>
。由于上述原因,Android Studio无法预览菜单。解决此问题的方法是删除tools:showIn
属性和工具名称空间。
xmlns:tools="http://schemas.android.com/tools" tools:showIn="navigation_view"
重构后, activity_home_drawer.xml 菜单应该看起来像
<?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_menu_camera"
android:title="@string/menu_home" />
<item
android:id="@+id/nav_gallery"
android:icon="@drawable/ic_menu_gallery"
android:title="@string/menu_gallery" />
<item
android:id="@+id/nav_slideshow"
android:icon="@drawable/ic_menu_slideshow"
android:title="@string/menu_slideshow" />
<item
android:id="@+id/nav_tools"
android:icon="@drawable/ic_menu_manage"
android:title="@string/menu_tools" />
</group>
<item android:title="Communicate">
<menu>
<item
android:id="@+id/nav_share"
android:icon="@drawable/ic_menu_share"
android:title="@string/menu_share" />
<item
android:id="@+id/nav_send"
android:icon="@drawable/ic_menu_send"
android:title="@string/menu_send" />
</menu>
</item>
</menu>