記事一覧

onKeyDown --> get KEYCODE_BACK no longer works

Android API changes very quickly.
Searching on the web about how to override the functionality of device's back button you'll find the code like this:


@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ( keyCode == KeyEvent.KEYCODE_BACK ) {
// do something;
}
return true;
}

But this seems no longer work on Android 2.x
I followed a suggestion found on the web to have done like this instead.

@Override
public void onBackButton(){
// do something;
}

You'd better watch out when googl'ing because lots of obsolete information will come upwards in search results because they are not old enough to be hidden by new information.


Android APIの変化は早いですね。
さっき端末の戻るボタンを乗っ取る方法を調べてたんですが、多くのページが


@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ( keyCode == KeyEvent.KEYCODE_BACK ) {
// do something;
}
return true;
}

という感じのコードを載せてる。でもこれって 2.x では動かないらしい。もうちょい調べて出てきたこういうコードで動きました。

@Override
public void onBackButton(){
// do something;
}

Web上では、1.x系の情報もまだ十分に「古くなりきってない」感じなので、けっこう検索の上位に出てきてしまいます。
この手の話をググるときは気をつけた方が良さそうですね。