android 在fragment中如何监听返回键,home键

转载 2015年11月20日 16:45:46

原文地址:http://wujierd.iteye.com/blog/2104153

在activity中用keydown很容易实现对返回键的监听,但是这个函数不能再fragment中重载。 

通过我呕心沥血的寻找,终于找到了解决办法,对其他物理按键的监听也同理。 
Java代码  收藏代码
  1. public class phonerecorder extends Fragment {  
  2.     View listview;  
  3.     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {  
  4.         listview = (View) inflater.inflate(R.layout.phonerecorder, null);  
  5.         mListView = (ListView) listview.findViewById(R.id.listView);  
  6.         init();  
  7.         mListView.setOnItemClickListener(clickitemlistener);  
  8.         listview.setFocusable(true);//这个和下面的这个命令必须要设置了,才能监听back事件。  
  9.         listview.setFocusableInTouchMode(true);  
  10.         listview.setOnKeyListener(backlistener);  
  11.         return listview;  
  12.     }  
  13.   private View.OnKeyListener backlistener = new View.OnKeyListener() {  
  14.         @Override  
  15.         public boolean onKey(View view, int i, KeyEvent keyEvent) {  
  16.             if (keyEvent.getAction() == KeyEvent.ACTION_DOWN) {  
  17.                 if (i == KeyEvent.KEYCODE_BACK) {  //表示按返回键 时的操作  
  18.                     if (!rootpatch.equals(currentfilepach) && currentfilepach != null) {  
  19.                         File file = new File(currentfilepach);  
  20.                         openDir2(file.getParent().toString());  
  21.                         currentfilepach = file.getParent().toString();  
  22.                         return true;  
  23.                     } //后退  
  24.                     return false;    //已处理  
  25.                 }  
  26.             }  
  27.             return false;  
  28.         }  
  29.     };  
  30. }  

Fragment监听返回键

Activity可以通过重写onKeyDown(int keyCode, KeyEvent event),很容易的监听物理返回键事件,而Fragment并不能重写物理键监听事件。在一个Activity...
  • Peak1Chen
  • Peak1Chen
  • 2016年05月24日 08:25
  • 3475

在Fragment中监听返回键等物理按键的事件

有些情况下,我们需要让Fragment也监听到返回键
  • hansion3333
  • hansion3333
  • 2016年11月21日 14:41
  • 2839

在Activity,Service,Window中监听Home键和返回键的一些思考,如何把事件传递出来的做法!

在Activity,Service,Window中监听Home键和返回键的一些思考,如何把事件传递出来的做法! 其实像按键的监听,我相信很多人都很熟练了,我肯定也不会说这些基础的东西,所以,前期,...
  • qq_26787115
  • qq_26787115
  • 2016年08月20日 11:43
  • 4913

fragment处理物理返回键

转载: http://blog.csdn.net/guxiao1201/article/details/40507387 fragment监听返回键。有时候在activity中点击了物理返回键,不只是...
  • a465456465
  • a465456465
  • 2016年02月23日 10:12
  • 4796

关于屏蔽Android返回键的一些思考

前言 在Android开发中,有时候我们需要屏蔽掉系统的返回键,比如在闪屏页面或者进行某些特定的操作时,通常的实现要如下两种方式。 1.重写Activity的onBackPressed方法...
  • Small_Lee
  • Small_Lee
  • 2018年01月13日 16:32
  • 59

Android 在Fragment中监听返回键的做法

我只针对一种来讨论  当你的Fragment是Activity中的一个容器布局被replace或add进来的 需要重写在Activity中重写 onKeyDown返回键操作的方法, 此方法代码 @...
  • meiwan123
  • meiwan123
  • 2016年12月14日 17:56
  • 904

Fragment中设置监听返回键的功能

首先创建一个抽象类BackHandledFragment,该类有一个抽象方法onBackPressed(),所有BackHandledFragment的子类在onBackPressed方法中处理各自对...
  • zl18603543572
  • zl18603543572
  • 2015年09月03日 18:15
  • 1346

优雅的让Fragment监听返回键

Fragment是不能得到物理返回键的监听的,
  • guxiao1201
  • guxiao1201
  • 2014年10月27日 14:40
  • 77178

Android fragment监听返回键

fragment需要监听返回键时分两种情况,一种是有其他控件获取了焦点,另一种是没有其他控件获得焦点。 先看第二种情况,代码如下: MyFragment.Java [...
  • love_xiaozhao
  • love_xiaozhao
  • 2017年04月10日 12:38
  • 640

Android设备Home、Menu和Back返回键的监听

在APP的操作中,有时需要监听系统按键,今天我就分享下自己的学习所得。 Menu键和Back键通过KeyDown事件就可以监听到,但Home键触发是系统事件,不能通过KeyDown简单的监控,但可以通...
  • nalw2012
  • nalw2012
  • 2015年11月06日 14:28
  • 3964
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android 在fragment中如何监听返回键,home键
举报原因:
原因补充:

(最多只允许输入30个字)