dispatchKeyEventで戻るボタンイベントを取得し、処理を行いたいのですが、問題にあたってしまいました。
現象は以下のとおりです。
1.MainActivityからMyPreferenceActivityに移動する。
2.MyPreferenceActivityから、戻るボタンを押してMainActivityに戻る
2で戻ってきたとき、MainActivityに記述したdispatchKeyEventが呼ばれて、処理が行われてしまう。
MainActivity(一部コード)
public void onClick(View v){
startActivity(new Intent(this, MyPreferenceActivity.class));
}
@Override
public boolean dispatchKeyEvent(KeyEvent e){
if(e.getKeyCode() == KeyEvent.KEYCODE_BACK){
/* 処理 */
return true;
}
return super.dispatchKeyEvent(e);
}
MyPreferenceActivity(全コード)
public class MyPreferenceActivity extends PreferenceActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}
他のActivity(Activityを継承しているクラス)へ遷移した場合は、
戻るボタンでMainActivityに戻ってきてもdispatchKeyEventの処理は実行されません。
コードの問題点や解決策をご存知の方、いらっしゃいましたらご教授のほどよろしくお願いします。
--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。