view.findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EditText input=(EditText)parent.findViewById(R.id.input);
//run at specified time
Toast.makeText(getApplicationContext(), input.getText().toString(), Toast.LENGTH_SHORT).show();
//run at specified time
}
});
我知道有两种方法可以做到这一点
第一个是处理程序,但当设备 sleep 时它不起作用
第二个是 AlarmManager,但它必须创建另一个 Activity 或服务
我只想运行一段代码,并且这些代码对当前 Activity 有很多依赖,是否有其他方法可以在指定时间运行代码?
最佳答案
要在指定时间运行某些代码行,您需要使用 android 的 Timer 类。使用 Timer 类而不是倒数计时器类。
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
//your lines of code at specified time
}
}, delays Millisecond, Interval Millisecond);
以毫秒为单位的延迟意味着计时器在此毫秒后启动
间隔毫秒表示定时器每次都在这个特定时间运行。
关于Android,在指定时间运行某行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36353588/