0

デバイスだけでなくエミュレーターでもホームボタンを処理する方法。

私はこれらの2つのメソッドを見つけました:-

public void onPause

public void onStop

しかし、私のニーズによれば、これは完璧な解決策ではありません。誰かが私を導きます。

4

2 に答える 2

1

私は解決策を見つけました:-

public void onUserLeaveHint()
{
    super.onUserLeaveHint();
}

HOMEボタンを押したときにのみ実行されます。

詳細については、http://developer.android.com/reference/android/app/Activity.htmlをご覧ください

于 2012-07-09T10:39:30.960 に答える
0

セキュリティ上の理由から、Android 開発者自身がホーム ボタンの動作を変更することを許可していません。しかし、ホームボタンの押下を本当に無効にしたい場合でも、以下のコードを追加することでこれを行うことができます....

@Override
public void onAttachedToWindow() {
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
    super.onAttachedToWindow();
}

@Override    
public boolean onKeyDown(int keyCode, KeyEvent event) {   

    if(keyCode == KeyEvent.KEYCODE_HOME) {
        Log.i("Home Button","Clicked");
    }


    if(keyCode==KeyEvent.KEYCODE_BACK) {

        finish();
    }

    return false;
}
于 2012-07-09T10:45:35.873 に答える