Android启动菜单项选择活动
我有两门课。一个是基本指令屏幕,在该屏幕上有一个菜单,可以让你进入另一个类。另一个类是MapActivity。我相信问题在于找不到另一个班级。我尝试了几种不同的方法来声明查找类的意图。这是我最近尝试过的一件事:Android启动菜单项选择活动,android,menu,android-activity,android-intent,android-2.1-eclair,Android,Menu,Android Activity,Android Intent,Android 2.1 Eclair,我有两门课。一个是基本指令屏幕,在该屏幕上有一个菜单,可以让你进入另一个类。另一个类是MapActivity。我相信问题在于找不到另一个班级。我尝试了几种不同的方法来声明查找类的意图。这是我最近尝试过的一件事: @Override public boolean onCreateOptionsMenu(Menu menu){ MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main
@Override
public boolean onCreateOptionsMenu(Menu menu){
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.mainmenu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch(item.getItemId()){
case R.id.goToMap:
Intent intent = new Intent();
intent.setClassName(Main.this, "Map.Class");
startActivity(intent);
return true;
}
return false;
}
它是扩展活动的基本类,而map类是扩展MapActivity的基本类(这会导致问题吗?)。这是我清单文件的重要部分:
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Campus_Map"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Main" android:label="Instructions" ></activity>
<activity android:name=".Map" android:label="Map">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
</application>
编辑:
当查看LogCat以了解发生了什么时,我收到了一个java.lang.NoClassDefFoundError和一些其他消息,上面说“类的链接。/Map失败”、“无法找到从方法/Main.run引用的类。/Map”和“VFY:无法解析const class 37”您尝试过这种方法吗
Intent intent = new Intent(Main.this, Map.class);
您可以这样使用,不要忘记将这两个活动添加到AndroidManifest.xml:
Intent launchNewIntent = new Intent(CurrentClass.this,SecondClass.class);
startActivityForResult(launchNewIntent, 0);
您必须在清单中实现这一行
<uses-library android:name="com.google.android.maps" />
如果你已经这么做了,那你就做错了!它必须位于
标记内。否则你会得到你的错误
case R.id.home:
startActivity(new Intent(main.this, map.class));
return true;