レイさん
adamrockerです。
確認せず反射的に答えてしまってスミマセン。
代替案として以下はどうでしょう?
/*-----------------------*/
private int LONG_PRESS_DELAY = 500;// msec
private Handler mHandler = new Handler();
private Runnable mLongPressAction = new Runnable() {
public void run() {
//ここにLongPressの処理を書く
}
};
onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_X) {
synchronized (this) {
if (!registLongPress) {
registLongPress = true;
mHandler.postDelayed(mLongPressAction, LONG_PRESS_DELAY);
}
}
}
}
onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_X) {
synchronized (this) {
mHandler.removeCallbacks(mLongPressAction);
registLongPress = true;
}
}
}
/*-----------------------*/
xキーをdownしたらHandlerにLongPressの処理を登録して
xキーをupしたらHandlerからLongPressの処理を除外します。
除外される前にLONG_PRESS_DELAY経過していれば
mLongPressAction.run()が実行されます。
多分これでLongPressっぽい処理が書けると思います。
お試し下さい。
2009年11月17日21:37 レイ <
beginner...@gmail.com>: