天天看點

android fragment 實體傳回鍵,在Fragment中監聽傳回鍵等實體按鍵的事件

在Activity中重寫onKeyDown方法。

擷取到目前commit的Fragment判斷目前Fragment是否是我們需要監聽傳回鍵的Fragment。

如果是,就調用Fragment中的相應自定義方法,并傳回true;

如果不是就傳回super.onKeyDown(keyCode, event),注意這裡不要直接傳回false,否則傳回鍵失效。

監聽其他按鍵也是同理。

@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {

if (fragment instanceof GalleryFragment) {

((GalleryFragment) fragment).cancleSelect();

return true;

}

}

return super.onKeyDown(keyCode, event);

在Fragment中自定義的方法:

public void cancleSelect() {

//TODO something

}