Soru & Cevap

Donanım tuşuna bastırma

29.12.2014 - 09:24

Arkadaşlar telefon üzerinde bulunan seçenek, menü ve geri donanım tuşlarını yazılım ile nasıl bastırabilirim. Yani program üzerinde donanım tuşlarının aynısı var, programdan menu tuşuna basıldığında sanki donanım üzerinden menü tuşuna basılmış gibi komut göndermek istiyorum.

KEYCODE_MENU

KEYCODE_HOME

KEYCODE_BACK bu üç tuşu yazılım ile bastırmak istiyorum.

6 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-7661-1418285218.jpg
zafermuhammed93
29.12.2014 - 10:08

[code]

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


    }

    public boolean onKeyDown(int keyCode, KeyEvent event) {     

        if(keyCode == KeyEvent.KEYCODE_HOME || keyCode == KeyEvent.KEYCODE_POWER || keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_MENU || keyCode == KeyEvent.KEYCODE_SEARCH  )
        {

           Toast.makeText(getApplicationContext(),"You pressed a control button with keyCode : " + keyCode, Toast.LENGTH_SHORT).show();
           return false;

        }
        else
        {
            Toast.makeText(getApplicationContext(),"You pressed" + keyCode, Toast.LENGTH_SHORT).show();
        }

        return true;
    }

    public boolean onKeyUp(int keyCode, KeyEvent event) {     

        if(keyCode == KeyEvent.KEYCODE_HOME || keyCode == KeyEvent.KEYCODE_POWER || keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_MENU || keyCode == KeyEvent.KEYCODE_SEARCH  )
        {

           return false;

        }
        else
        {
            // Do nothing
        }

        return true;
    }

[/code]

veya burada ki baglantiya bakabilirsin

http://stackoverflow.com/questions/2208912/how-can-i-detect-user-pressing-home-key-in-my-activity