所以我原来的问题是在我的清单中我的菜单正在加载即
<activity
android:name=".MainMenu"
android:label="@string/app_name" >
<intent-filter>
<action android:name="com.th3ramr0d.learnar670_1.MAINMENU" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
这是通过在启动时加载来修复的,即
<activity
android:name=".MainMenu"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
所以现在我的主菜单有效。但是,MainMenu.xml中的按钮会将您带到另一个带有更多按钮的.xml文件。所以现在我有同样的问题。我创建了另一个名为SubMenuChapter3的类,并将其放入清单中。
<activity
android:name=".SubMenuChapter3"
android:label="@string/app_name" >
<intent-filter>
<action android:name="com.th3ramr0d.learnar670_1.SUBMENUCHAPTER3" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
现在这不起作用我假设出于与之前相同的原因与mainmenu。不会崩溃或给我错误。它只是不打开submenuchapter3类。我强迫submenuchapter3类打开
startActivity(new Intent("com.th3ramr0d.learnar670_1.SUBMENUCHAPTER3"));
直接进入onclick外的MainMenu类,看它是否正常工作。当我这样做时,它打开了chapter_3.xml,就像它应该的那样,按钮工作。谢谢你的帮助。
答案 0 :(得分:1)
您误解了<intent-filter>
标记以及您开始活动的方式。
同时保持适当的术语 - Menu
和Activity
完全不同。
您可以在此处找到有关活动的所有信息:Activities | Android Developers
示例:强>
AndroidManifest.xml
中的此条目表示&#34;在启动器中显示MainMenu
活动为图标&#34;:
<activity
android:name=".MainMenu"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
编辑:这允许Android启动MainActivity
。它还将显示在已安装的应用列表中。
以下活动不会在启动器中显示,但可以从应用程序中打开:
<activity android:name=".SubMenuChapter3"/>
编辑:这允许Android启动SubMenuChapter3
。它不会在已安装的应用列表中显示。
这些行说&#34;打开SubMenuChapter3
活动&#34;:
Intent i = new Intent(this, SubMenuChapter3.class);
startActivity(i);
编辑:您可以在onClick
内的MainMenu
方法内调用此代码。它将启动SubMenuChapter3
。