我刚刚创建了自己的“主页”,来替换原生的安卓或Sense。
所有功能都正常,我得到了我想要的一切。我唯一的问题是如何用我的启动器替换长按主页键(通常显示您最近启动的6个活动)。
我成功地用这段代码替换了长按菜单按钮:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//Log.i(TAG,"Keycode: "+keyCode);
if (keyCode == KeyEvent.KEYCODE_MENU) {
// this tells the framework to start tracking for
// a long press and eventual key up. it will only
// do so if this is the first down (not a repeat).
event.startTracking();
return true;
}
(...)
并且这部分是用于长按的:
@Override
public boolean onKeyLongPress(int keyCode, KeyEvent event) {
//Log.i(TAG,"LONG"+keyCode);
Toast.makeText(Launcher.this,"LONG "+keyCode, Toast.LENGTH_SHORT).show();
if (keyCode == KeyEvent.KEYCODE_MENU) {
(...)
但问题是我无法将KeyEvent.KEYCODE_MENU替换为KeyEvent.KEYCODE_HOME
是否有代码锁定了用户使用Home键长按的功能?
非常感谢您提供的所有信息。