我制作紧急应用程序,当按下音量减小键或菜单键时,将向5个人发送短信。 这是我在启动活动时检测按键的代码:
package com.application.tpa;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.widget.Toast;
public class main extends Activity {
/** Called when the activity is first created. */
int ctrMenu=0,ctrkeyUp=0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//startService(new Intent(main.this, PAservice.class));
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_MENU)) {
ctrkeyUp=0;
ctrMenu++;
if (ctrMenu==5)
{
Toast.makeText(this, "You pressed the Menu button!", Toast.LENGTH_LONG).show();
ctrMenu=0;
}
//return true;
}
else if ((keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)) {
ctrMenu=0;
ctrkeyUp++;
if (ctrkeyUp==5)
{
Toast.makeText(this, "You pressed the Volume Down button!", Toast.LENGTH_LONG).show();
ctrkeyUp=0;
}
//return true;
}
return super.onKeyDown(keyCode, event);
}
}
每个人都知道如何在android中创建计时器(或其他),每隔3秒将我的计数器变量重置为零?所以我可以在3秒前按下按钮5次时运行一些程序..谢谢..
答案 0 :(得分:8)
这是使用TimerTask使用Timer的方法:
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
// add your stuff here
}
}
}, 3000, 3000);
要取消计时器,您可以使用timer.cancel();
答案 1 :(得分:1)
使用java.util.Timer
和java.util.TimerTask
类。