Fragment activity catch onKeyDown and use in fragment

后端 未结 6 655
别那么骄傲
别那么骄傲 2020-12-09 08:28

I have Fragment activity with pager:

List fragments = new Vector();
    fragments.add(Fragment.instantiate(this, PastEventLis         


        
6条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-12-09 09:12

    What you can do is to define a custom method in your fragment class(s). For example:

    public void myOnKeyDown(int key_code){
       //do whatever you want here
    }
    

    and call this method whenever a key-down event is raised in your Activity class. For example:

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_MENU) {
            ((PastEventListFragment)fragments.get(0)).myOnKeyDown(keyCode);
            ((EventListFragment)fragments.get(1)).myOnKeyDown(keyCode);
    
            //and so on...
        }
        return super.onKeyDown(keyCode, event);
    }
    

提交回复
热议问题