0

戻るボタンの問題に直面しています。私のアプリケーションでは、ユーザーが戻るボタンをクリックするとホーム画面に移動する機能を実装したいと考えています。これを行うために、コードを書きました。

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {

            if(backCount==0){
                backCount++;
            Intent restartResearchActivity = new Intent(ResearchListNew.this,ResearchListNew.class);
            startActivity(restartResearchActivity);

            }

            else{



            }
        }

        return super.onKeyDown(keyCode, event);
    }

ユーザーがホーム画面自体にいて、 APP から出たいときに、上記のループの else 部分に移動し、再度プロンプトが表示されないように、静的変数 int backCount=0 を使用しました。ホーム画面、

しかし、最初に戻るボタンを使用すると、正しく機能し、バックカウントが = 1 になり、その後、ユーザーが戻るボタンをクリックしても、バックカウントが 0 より大きいため、ホーム画面に移動しません。

このシナリオで親切に私を助けてください。

ありがとう

4

2 に答える 2

1

アクティビティがどのようにネストされているかはわかりませんが、アクティビティが 1 つだけの場合は、finish() を呼び出すことができます。これにより、アクティビティが強制終了され、以前に起動していたアクティビティに戻ります。これは、デフォルトで戻るボタンが行うこととほぼ同じです。

于 2012-07-13T19:23:31.327 に答える
0

onKeyDown を使用するか、BackPressed 機能をオーバーライドできます。

コードに従ってください、それは動作します

@Override
public void onBackPressed() {
    // TODO Auto-generated method stub
    super.onBackPressed();


startActivity(new Intent(this,HomeActivity.class));
}

楽しみ!!!

于 2012-07-13T19:29:58.840 に答える