我們在TV軟件開發的時候,會使用DialogFragment,有時候要對它的按鍵事件進行監聽,但是DialogFragment的監聽方法和其它的不一樣。
方法:
在onCreateView中加入
this.getDialog().setOnKeyListener(new OnKeyListener() { public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event){ if (keyCode == KeyEvent.KEYCODE_SEARCH) return true; // pretend we've processed it else return false; // pass on to be processed as normal } });
即可,通過判斷各種事件,進行監聽處理。希望能夠幫到需要的朋友。
還有 就是 return false和return true是是否允許事件下傳,return true是中斷事件,那么下面的就接受不到按鍵信息了,只有在return false的時候 才會事件繼續向下傳遞。