5

我是一个初学者的 android 程序员,我似乎有一个问题:我打开新的活动,用

Intent newGameIntent = new Intent(actionName);
startActivity(newGameIntent);

一切正常,活动开始。但是当我调用finish()时,它不会进入之前的活动,它只是关闭应用程序(没有错误或其他日志消息)

有谁知道为什么会这样?谢谢你的时间!

根据要求,这里有更多代码(我可能完全搞砸的东西):第一个活动:

@Override
protected void onStop() {
    super.onStop(); 
    SplashScreen.sounds.releasSounds();
    finish();
}
@Override
protected void onPause() {
    super.onPause();
    pauseActivity();
}

@Override
protected void onResume() {
    // TODO Auto-generated method stub
    super.onResume();
    gameLoop.resumeThread();
    SplashScreen.sounds.resumeSounds();
}

private void pauseActivity() {
    gameLoop.pauseThread();
    SplashScreen.sounds.pauseBck();
}

和第一个活动调用秒活动

Intent newGameIntent = new Intent("com.YuvalApps.menus.NEWGAMEMENU");
    startActivity(newGameIntent);

和秒活动

    @Override
protected void onPause() {
    // TODO Auto-generated method stub
    super.onPause();
    finish();

}
4

2 回答 2

3

当一个activity在后台时,android系统会调用“onStop”方法,但是你在“onStop”方法中调用了“finish”方法,所以如果你跳转到另一个activity,前一个activity会被“onStop”破坏。您应该在“onStop”方法中删除“finish”。

于 2012-12-05T17:04:08.540 回答
-1

如果您调用finish() 来关闭当前活动并返回上一个活动,只需调用onBackPressed() 而不是finish()。它将带您回到上一个活动。

于 2012-12-05T16:28:25.460 回答