public void BetTimerFuction()
{
int delay=0;
int period=200;
betTimer = new Timer();
betTimer.schedule(new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
mHandlerBet.obtainMessage().sendToTarget();
}
}, delay, period);
}
它是我的计时器代码,但我没有在视图类中使用该计时器我也使用画布。 当我在视图类中使用该计时器时,计时器获得一个数字,当我单击按钮时,它会非常慢,它会增加整数两个计时器
答案 0 :(得分:1)
我修改了你的代码,因为我觉得在那段代码中没有问题。但是,如果您先使用并且也正确停止,可能是您没有正确初始化以使计时器为空。
public void BetTimerFuction()
{
int delay=0;
int period=100;
betTimer = new Timer();
betTimer.schedule(new TimerTask() {
@Override
public void run() {
// TODO Auto-generated method stub
mHandlerBet.obtainMessage().sendToTarget();
}
}, delay, period);
}
这是你停止功能
public void StopBetTimer()
{
try
{
if(betTimer !=null)
{
betTimer.cancel();
betTimer=null;
}
}
catch(Exception e)
{
}
}
答案 1 :(得分:1)
我认为你首先为你的停止功能做空。
public void StopBetTimer()
{
try
{
if(betTimer !=null)
{
betTimer.cancel();
betTimer=null;
}
}
catch(Exception e)
{
}
}