13

ボタンクリックでアプリケーションを終了したい。

ボタンクリックのコードは

quitBtn.setOnClickListener(new View.OnClickListener() {         
    @Override
    public void onClick(View paramView) {
        // TODO Auto-generated method stub              
        MainActivity.this.finish();
    }
});

ただし、アプリを終了するには 2 回クリックする必要があります。

4

7 に答える 7

22

このコードを使用してください...これがあなたに役立つことを願っています..

  quitBtn.setOnClickListener(new View.OnClickListener() {         
        @Override
        public void onClick(View paramView) 
      {
            finish();          
            moveTaskToBack(true);
        }
    });
于 2013-01-02T05:59:49.330 に答える
10

これを使用してください。私にとってはうまくいきます:

quitBtn.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View paramView) {

                moveTaskToBack(true); 
                MainActivity.this.finish();
            }
});
于 2013-01-02T05:58:45.513 に答える
2

スタック内の最初のアクティビティ (MainActivity) でアプリを終了する必要があります (通常、アプリの起動時に起動される最初のアクティビティ)。私はこのコードを使用しています:

finish();
android.os.Process.killProcess(android.os.Process.myPid());

どちらの行も重要です。Android はアプリを自動的に再起動する可能性があるため、強制終了だけでは十分ではありません。したがって、finish() も使用する必要があります。

別のアクティビティからアプリを終了する場合は、まず MainActivity に戻り、そこから終了します。戻るには、次のコードを使用します。

Intent i = new Intent(context, MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
context.startActivity(i);

これにより、MainActivity の onCreate が呼び出されます。(アプリケーション コンテキストで) 静的変数を使用して、onCreate で終了するかどうかのフラグを設定します。

于 2014-02-23T01:08:26.883 に答える
0

onClick()xmlファイルで関数を指定したばかりの場合は、これらすべての混乱を回避できます。それは処理しますView.OnClickListener()

XML実装との違いの詳細については、以下のリンクをお読みください View.OnClickListener()

android:onClick XML属性はsetOnClickListenerとどの程度正確に異なりますか?

于 2013-01-02T06:16:33.650 に答える
0

これを試してみてください。

quitBtn.setOnClickListener(new View.OnClickListener() {         
    @Override
    public void onClick(View v) {
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_HOME);
        startActivity(intent);
    }
});

マニフェスト ファイルを編集する

<activity android:name=".HomeActivity" android:label="@string/app_title_home" android:clearTaskOnLaunch="true" />
于 2013-01-02T05:56:53.217 に答える
0

アクティビティを終了する、またはアプリを終了するには

   @Override
    public void onBackPressed() {
        this.finish();
    }
于 2017-08-18T10:18:06.490 に答える