私のAndroidアプリケーションでは、私のホームアクティビティは別のJavaクラスに配置された非同期タスクを呼び出します。ユーザがデバイスの背面を押すと、非同期タスクcalled.How私は、アクティビティを延長しないJavaクラスのユーザのバッククリックにアクセスできますか?Javaクラスのバッククリックのハンドルを取得
提案があれば教えてください。
私のAndroidアプリケーションでは、私のホームアクティビティは別のJavaクラスに配置された非同期タスクを呼び出します。ユーザがデバイスの背面を押すと、非同期タスクcalled.How私は、アクティビティを延長しないJavaクラスのユーザのバッククリックにアクセスできますか?Javaクラスのバッククリックのハンドルを取得
提案があれば教えてください。
HomeActivityのonPause()ライフサイクルメソッドをオーバーライドします。 ユーザが戻るボタンを押すと呼び出されます。
編集:申し訳ありません、あなたの投稿を読んで、それが別のJavaクラスにあったとは思いませんでしたが、アクティビティが拡張されますか?
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// Code here
return true;
}
return super.onKeyDown(keyCode, event);
}
いいえそれは活動を拡張しません。:( – Remmyabhavan
あなたは、その後、onBackPressedをオーバーライドするイベントについてのあなたの非同期タスクを合図するHandlerを使用する必要があります。
@Override
public void onBackPressed()
{
your_code(){}
super.onBackPressed();
return;
}
onPause()は、画面が背景に移動するたびに呼び出されます。必ずしもバックプレスではありません。そうではない正しい選択 –