Android Keycode#U home不';我不叫安卓
嘿,我有一个代码,看起来像这样:Android Keycode#U home不';我不叫安卓,android,Android,嘿,我有一个代码,看起来像这样: public boolean onKeyDown(int keyCode, KeyEvent event) { if (event.getAction() == KeyEvent.ACTION_DOWN) { switch (keyCode) { case KeyEvent.KEYCODE_HOME: System.out.println("sdfadsfadsf"); fi
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
switch (keyCode) {
case KeyEvent.KEYCODE_HOME:
System.out.println("sdfadsfadsf");
finish();
return true; }
} return super.onKeyDown(keyCode, event);}
我的问题是,应用程序既不会终止,也不会执行println。有人能告诉我我做错了什么吗?当用户按下home键时,应用程序应关闭。我这样做是因为我的用户在打开其他应用程序时遇到性能问题。我可以提高应用程序的性能,但在这种类型的应用程序中,确实没有必要让它保持运行。根据设计,Home键不能被截获,因此,
KEYCODE\u Home
不会在任何回调中发送。您只能推断何时按下Home键。根据设计,Home键无法被截获,因此在任何回调中都不会发送KEYCODE\u Home
。您只能推断何时按下Home键。您可能可以尝试在主菜单中使用onClose。这将允许您在关闭应用程序时保存文件或执行任何操作。
类似于
@Override
protected void onStop() {
super.onStop();
//Do whatever
}
您可能可以尝试在主应用程序中使用onClose。这将允许您在关闭应用程序时保存文件或执行任何操作。 类似于
@Override
protected void onStop() {
super.onStop();
//Do whatever
}
我在这里找到的,所以:
- 问题:
- 原职:
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
boolean defaultAction = super.onKeyDown(keyCode, event);
if (keyCode == KeyEvent.KEYCODE_HOME) {
Log.i(TAG, "it's into the IF statement!");
}
return defaultAction;
}
我在这里找到的,所以:
- 问题:
- 原职:
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
boolean defaultAction = super.onKeyDown(keyCode, event);
if (keyCode == KeyEvent.KEYCODE_HOME) {
Log.i(TAG, "it's into the IF statement!");
}
return defaultAction;
}
此密钥由框架处理,永远不会交付给应用程序。
但是您可以使用
反射实现它。请参见此密钥由框架处理,并且从未交付给应用程序。
但是您可以使用反射实现它。请参见谢谢您的回答。你说,我只能推断何时按下Home键。这不意味着会有办法解决我的问题吗?是的,也许吧。如果您的活动不使用键盘,因此没有EditText或用户按下硬键盘,则选择“是”。最重要的可能是,当使用键盘时,您可能能够过滤掉该键,并且可以通过逻辑推断何时按下主控键。谢谢您的回答。你说,我只能推断何时按下Home键。这不意味着会有办法解决我的问题吗?是的,也许吧。如果您的活动不使用键盘,因此没有EditText或用户按下硬键盘,则选择“是”。最重要的是,当使用键盘时,您可能能够过滤掉按键,并且可以通过逻辑推断何时按下主控键。非常感谢。不知何故,现在这两种方法都能工作,只是应用程序不一定会关闭,但这没关系,因为现在按下home按钮后,它使用的内存不足1 mb。你可能可以在onStop方法中添加代码来杀死应用程序,我已经看到了一些关于它的帖子。谢谢。不知何故,现在这两种方法都能工作,只是应用程序不一定会关闭,但这没关系,因为现在按下home按钮后,它使用的内存不足1 mb。你可能可以在onStop方法中添加代码来杀死应用程序,我已经看到了一些关于它的帖子。“当用户按下home键时,应用程序应该关闭”——不,不应该。“我可以提高应用程序的性能效率”--因为用户除了按HOME键外,还有很多方法可以离开你的应用程序,请“提高应用程序的性能效率”。“当用户按HOME键时,应用程序应该关闭”--不,不应该。“我可以提高应用程序的性能效率”——因为用户除了按HOME键外,还有很多方法可以离开你的应用程序,请“提高应用程序的性能效率”。