-2

我的应用程序中有一个主要活动。该活动创建了另外两个活动(在不同的时间)。一个是设置活动,另一个是自定义活动。

现在我的问题是当我在设置活动中并按下后退按钮时,它返回到主要活动。很棒,就像它应该的那样。但是现在当我在我的自定义活动中并按下后退按钮时,整个应用程序都会关闭??它不会像应有的那样返回到主要活动。

我不确定为什么会这样,因为我实例化两个类的方式是相同的,并且清单文件对于两个活动都是相同的。

调用活动的代码:

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>

为什么会这样?

4

1 回答 1

0

我发现了问题,

以为我会为可能有同样问题的任何其他人发布答案,

问题出在我的 switch 语句中:我遗漏了 return 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);
    }
    }
于 2013-03-14T06:54:32.563 回答