在Fragment中監聽返回鍵等物理按鍵的事件
阿新 • • 發佈:2019-02-04
在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
}