如何有效地处理设备主页按钮点击?

时间:2013-03-21 05:50:43

标签: android button event-handling click

我想在我的android应用程序中处理设备主页按钮单击。当谷歌搜索时,据说这个 Link有效。但我有些疑惑。

  1. 是否所有Android版本都支持?如果不支持哪个版本?

  2. 由于使用了onAttachedToWindow()方法,是否存在任何后果?

  3. 有没有办法处理主页按钮点击(除此之外)?

  4. 先谢谢

3 个答案:

答案 0 :(得分:0)

这仅适用于以前的版本。但是从操作系统版本4.0开始它不起作用(尽管在我的模拟器中,这在api 11级之后不起作用,但我根据许多其他链接指向了ics)。

答案 1 :(得分:0)

在其他帖子上找到了这个。

在较旧的Android版本上,这是有效的。但Android改变了这一点,因为他们说" Home Button应该保留Home Button"并且他们不希望任何人覆盖主页按钮。由于这个原因,你的代码不再起作用了。

如果您想在按下主页按钮时执行某些操作,请在onPause方法中执行此操作。

答案 2 :(得分:-1)

是的,请尝试此代码

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

现在处理这样的关键事件,

@Override

public boolean onKeyDown(int keyCode, KeyEvent event) {

if(keyCode == KeyEvent.KEYCODE_HOME)
{
 Log.i("Home Button","Clicked");
}
if(keyCode==KeyEvent.KEYCODE_BACK)
{

    finish();
 }
   return false;
};