之前公司项目有个需求就是在某些页面需要禁用home键,百度上网差了很多资料,网上也给了很多解决方式,但是在Android4.4之上都不起作用,最后查阅Android系统源码,发现一个方法很好用,也很简单,亲测在Android4.4原生态真机系统上是起作用的,模拟器上没作用,具体原因没有研究过,至于国内定制的rom不保证起作用,代码如下,在Activity的onCreate()方法中调用传入true就可以了,有木有觉得很简单实用。。。
void enableHomeKeyDispatched(boolean enable){
final Window window = getWindow();
final WindowManager.LayoutParams lp = window.getAttributes();
if (enable) {
lp.flags |= 0x80000000;
} else {
lp.flags &= ~0x80000000;
}
}