Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中更改密钥的功能_Android_Android Button - Fatal编程技术网

在android中更改密钥的功能

在android中更改密钥的功能,android,android-button,Android,Android Button,我开发了一个android应用程序,其中一些“OK”按钮(软键)出现在布局中,用于处理一些事件。我想在应用程序运行期间将其功能映射到手机中的硬键(如home键)。我还想知道如何区分单击按钮和双击按钮。如何知道两次单击按钮之间的时间间隔,以及我们是否可以更改该时间段以处理双击。您不应该截取home按钮的功能。因为这是用户可以在任何阶段退出应用程序的唯一方式。您可以覆盖此功能以拦截后退按钮的功能: public void onBackPressed{ //do something here }

我开发了一个android应用程序,其中一些“OK”按钮(软键)出现在布局中,用于处理一些事件。我想在应用程序运行期间将其功能映射到手机中的硬键(如home键)。我还想知道如何区分单击按钮和双击按钮。如何知道两次单击按钮之间的时间间隔,以及我们是否可以更改该时间段以处理双击。

您不应该截取home按钮的功能。因为这是用户可以在任何阶段退出应用程序的唯一方式。您可以覆盖此功能以拦截
后退按钮的功能:

 public void onBackPressed{
//do something here
}
编辑:


在安卓系统中,您无法覆盖home(主页)按钮,因此无论您想做什么,都要在按下back(返回)键时执行。

您所说的硬键是什么意思?主页按钮还是后退按钮?是的,比如主页按钮,我如何分配一些功能给它?你的意思是你想处理主页按钮还是后退按钮?是的,我想为它们分配一些功能,用于一些确认事件,如是或否。如果可能,只需单击一个按钮,单击一次表示是,双击一次表示否。此方法与backbutton??是相关。但是我认为如果你把它用于你的功能,那就不合适了。因为后退按钮是返回到上一个活动。你说你想从用户那里获取输入(是或否)。你可以这样做,但我建议你不要这样做,相反,你可以添加一个带有“是”和“否”的警告对话框。不行,我必须使用硬键,因为我正在开发盲人应用程序。因此,请告诉我如何覆盖这两个应用程序的功能,以及如何区分单击和双击查看我的编辑。您可以重写此函数。长时间单击而不是双击。。
@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        // TODO Auto-generated method stub
        return super.onKeyDown(keyCode, event);
    }

    @Override
    public boolean onKeyLongPress(int keyCode, KeyEvent event) {
        // TODO Auto-generated method stub
        return super.onKeyLongPress(keyCode, event);
    }
public boolean onKeyDown(int keyCode, KeyEvent event) {

        if(keyCode == KeyEvent.KEYCODE_BACK){

            finish();
                    startActivity(new Intent(URCLASSNAME.this,Homeclassname.class));


        }
        return super.onKeyDown(keyCode, event);
    }