【发布时间】:2012-12-22 11:04:06
【问题描述】:
我有 4 个 int 时间
int delay;
int period;
int delay1;
int period1;
他们正在控制这些方法:
cameraOn();
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
cameraOff();
}
},delay1,period1);
Timer timer2 = new Timer();
timer2.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
cameraOn();
}
},delay,period);
}
这些方法是让闪光灯一直闪烁,我想要的是用我有的两个按钮,改变闪烁的速度,现在它们是这样的:
case R.id.btslow:
delay = 2400;
period = 2400;
delay1 = 1200;
period1 = 2400;
break;
case R.id.btfast:
delay = 600;
period = 600;
delay1 = 300;
period1 = 600;
break;
但他们不改变眨眼的速度,我该怎么做?因为如果稍后从一开始就给他们一些勇气,当我按下按钮时,他们不会改变。谢谢!!
【问题讨论】:
-
点击哪些按钮后什么不会改变?也许这只是我,但我不是通灵者,我无法真正弄清楚你想要做什么。尽管您的问题似乎是您没有停止旧计时器并将新计时器放在那里(只是像您那样分配值本身不会做任何事情)。
-
我正在尝试使用按钮更改 int 值,闪烁的速度会改变,但如果我将 0 留作开始,则方法不起作用,如果我给它们有一些价值,当我按下某个按钮时它们不会改变