猿问

如何禁用主页键

如何禁用主页键

我想锁定屏幕。我想禁用主页键,只使用后退键。我该如何做到这一点?



小怪兽爱吃肉
浏览 619回答 3
3回答

哔哔one

使用此方法禁用Android中的Home键@Overridepublic void onAttachedToWindow() {     this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);     super.onAttachedToWindow();}

UYOU

我找到了解决HOME键的方法。对于您的应用程序,将清单设置为<action android:name="android.intent.action.MAIN" />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;<category android:name="android.intent.category.HOME" />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<category android:name="android.intent.category.DEFAULT" />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<category android:name="android.intent.category.MONKEY"/>现在您的应用程序是备用Launcher应用程序。使用adb,并使用包管理器禁用启动器应用程序pm disable com.android.launcher2现在Home键按下将始终保持在同一屏幕中。

摇曳的蔷薇

此解决方案仅适用于3.x。好吧,这应该是一个难题。但这是破解它的方法。在您的Activity中覆盖以下方法,@Overridepublic&nbsp;void&nbsp;onAttachedToWindow()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;super.onAttachedToWindow(); &nbsp;&nbsp;&nbsp;&nbsp;this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}现在处理这样的关键事件,@Overridepublic&nbsp;boolean&nbsp;onKeyDown(int&nbsp;keyCode,&nbsp;KeyEvent&nbsp;event)&nbsp;{ &nbsp;&nbsp;&nbsp;if(keyCode&nbsp;==&nbsp;KeyEvent.KEYCODE_HOME) &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Log.i("Home&nbsp;Button","Clicked"); &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;if(keyCode==KeyEvent.KEYCODE_BACK) &nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;finish(); &nbsp;&nbsp;&nbsp;} &nbsp;return&nbsp;false;}
随时随地看视频慕课网APP

相关分类

Android
我要回答