1

一部のアクティブなユーザーからアプリケーションにロック機能を追加しようとしています。ユーザーがロックボタンを押した場合、ユーザーが戻って過去のアクティビティに移動できないようにしたいのですが。 。したがって、ロック後にユーザーの電話に戻ると、ユーザーは電話の自宅に移動します。

CLEAR_TOPを試しましたが、これではうまくいきません。理由は何ですか。

    Button lockButton = (Button) findViewById(R.id.lockButton);
lockButton.setOnClickListener(new Button.OnClickListener() {
    public void onClick(View v) {
        Intent intent = new Intent(AccountListActivity.this, LockActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
        finish();
    }
});
4

1 に答える 1

1
  FLAG_ACTIVITY_CLEAR_TOP    

最初のアクティビティを再起動する場合にのみスタックをクリアしますが、あなたの場合は新しいアクティビティを起動します。したがって、前のアクティビティはクリアされません。

要件を実装するために1つのことを行うことができます-

インターフェイスを作成し、すべてのアクティビティに実装します。

次に、LockActivityを起動する前に、インターフェイスのデリゲートを呼び出してすべてのアクティビティを終了します。

于 2013-01-31T16:19:58.883 に答える