有人可以告诉我一个关于如何在音量增加硬件密钥上长时间点击(例如2秒)的代码示例吗?
谢谢:)
修改
我想要捕获长按的类是一个服务。我怎么能这样做?
答案 0 :(得分:2)
如果您只需要捕获长按,这个答案可能会有所帮助:
https://stackoverflow.com/a/5269673/1401257
编辑:
我从来没有试过在服务中设置一个关键的监听器,但是在Google的一点帮助下我发现了这个:Volume change listener?
普通的关键事件似乎只能从活动中处理。我没有时间自己尝试这一点,但是为了获得长时间点击,可以将链接的答案和Lukes的答案结合起来。 根据我对BroadcastReceivers的理解,您可能希望创建一个接收器,只要有人点击音量按钮就会通知服务。
答案 1 :(得分:1)
您可以选择执行以下操作:
if(clickedDown) {
if(beginningTime + 2000 < System.currentTimeMillis()) {
// Ok, the button has been clicked down for 2 seconds
}
}
else {
beginningTime = System.currentTimeMillis();
}
应用这样的东西,你就可以定义等待的时间。