zoukankan      html  css  js  c++  java
  • android处理Back键Home键和Menu键事件(转)

     @Override 
        public boolean onKeyDown(int keyCode, KeyEvent event) 
        {
            if(keyCode == KeyEvent.KEYCODE_BACK) 
            { //监控/拦截/屏蔽返回键
                dialog();
        
                return false; 
                
            } else if(keyCode == KeyEvent.KEYCODE_MENU) 
            {
                if(isShowButton)
                {
                    rly.setVisibility(View.VISIBLE);
                    isShowButton = false;
                    
                }else
                {
                    rly.setVisibility(View.GONE);
                    isShowButton = true;
                }
         
                return false;
                
            } else if(keyCode == KeyEvent.KEYCODE_HOME) 
            {
                //由于Home键为系统键,此处不能捕获,需要重写onAttachedToWindow()
      
                return false;
            }
            return super.onKeyDown(keyCode, event);
         }
        
        
        protected void dialog() 
        { 
            AlertDialog.Builder builder = new Builder(WebActivity.this); 
            builder.setMessage("确定要退出吗?"); 
            builder.setTitle("提示"); 
            builder.setPositiveButton("确认", 
            new android.content.DialogInterface.OnClickListener() 
            { 
                public void onClick(DialogInterface dialog, int which) 
                { 
                    dialog.dismiss(); 
                    WebActivity.this.finish(); 
                } 
            }); 
            
            builder.setNegativeButton("取消", 
            new android.content.DialogInterface.OnClickListener() 
            { 
                public void onClick(DialogInterface dialog, int which) 
                { 
                    dialog.dismiss(); 
                } 
            }); 
            
            builder.create().show(); 
        } 
        
        
        /*
        // 拦截/屏蔽系统Home键
        public void onAttachedToWindow() 
        { 
            this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); 
            super.onAttachedToWindow(); 
        }
        */
  • 相关阅读:
    Cornerstone-忽略(隐藏)文件
    ios开发xcode8+ 无需开发者账号,app打包ipa
    ssh-ajax登陆action返回字符串
    手动编译包含两个import自写类的java类。
    关闭IO资源
    java聊天室二(客户端)
    java聊天室一(服务器)
    文件IO常用操作
    Hive启动时的棘手问题的处理
    对于java反射的理解
  • 原文地址:https://www.cnblogs.com/wainiwann/p/3753589.html
Copyright © 2011-2022 走看看