为了账号安全,请及时绑定邮箱和手机立即绑定

安卓4.2以上屏蔽home键?

安卓4.2以上屏蔽home键?

负手_睥睨天下 2016-08-10 09:30:32
求告知如何在4.2版本以上屏蔽home键  2.2   2.3版本的重写onattach之类的方法就不要说了
查看完整描述

1 回答

?
田心枫

TA贡献1064条经验 获得超383个赞

  1. 屏蔽Activity中的Home键功能,只需要在你要屏蔽的activity 中重写 onAttachToWindow() 这个函数就可以了

      [java]
      @Override
      public void onAttachedToWindow() {
      this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
      super.onAttachedToWindow();
      }
      @Override
      public void onAttachedToWindow() {
      this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
      super.onAttachedToWindow();
      }

2.屏蔽 Dialog风格Activity的Home键功能,也需要在你要屏蔽的activity 中重写 onAttachToWindow() 这个函数,但设置window 的值需要改变为 TYPE_KEYGUARD_DIALOG

  [java]
  @Override
  public void onAttachedToWindow() {
  this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
  super.onAttachedToWindow();
  }
  @Override
  public void onAttachedToWindow() {
  this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
  super.onAttachedToWindow();
  }
  

 3.屏蔽AlertDialog的Home键功能

  [java]
  AlertDialog d = b.create();
  d.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
  AlertDialog d = b.create();
  d.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);

查看完整回答
反对 回复 2016-08-10
  • 1 回答
  • 1 关注
  • 2674 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信