我的应用中有一项主要活动。此活动创建另外两个活动(在不同时间)。一个是设置活动,另一个是自定义活动。
现在我的问题是当我在设置活动中并按下后退按钮时,它将返回主活动。伟大就像它应该。但是现在当我在我的自定义活动中并按下后退按钮时整个应用程序关闭?它不会像它应该那样返回主要活动。
我不确定为什么会这样,因为我实例化这两个类的方式是相同的,并且清单文件对于这两个活动都是相同的。
调用活动的代码:
Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);
和
Intent intent = new Intent(this, PacketActivity.class);
startActivity(intent);
清单文件:
<activity
android:name="com.example.tcptester.SettingsActivity"
android:label="@string/title_activity_settings" >
</activity>
<activity
android:name="com.example.tcptester.PacketActivity"
android:label="@string/title_activity_packet">
</activity>
为什么会这样呢?
答案 0 :(得分:0)
我发现了问题,
我想我会为其他可能遇到同样问题的人发布答案,
问题出在我的switch语句中:我遗漏了一个返回true。
switch (item.getItemId()) {
case R.id.menu_packet: {
Intent intent = new Intent(this, PacketActivity.class);
startActivity(intent);
/*-->>>>> i did not have this here:*/ return true;
}
case R.id.menu_settings: {
Log.i("Menu Item Clicked", "Settings");
Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);
return true;
}
default: {
return super.onOptionsItemSelected(item);
}
}