我正在尝试使用计时器触摸事件旋转图片。我创建了一个无需定时器/线程即可工作的方法。但是当我在计时器中使用它时,它就不起作用了。我不擅长安卓编程。
----------->这就是
@覆盖
public boolean onTouch(View v, MotionEvent event){
t1=new TimerTask()
{
public void run()
{
angle += 40;
spin(angle);
if(angle >=360)
angle = 0;
}
};
t.schedule(t1,2*1000);
return false;
}});
---------->这是我的旋转方法
public void spin(int degree)
{
Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
Matrix mat = new Matrix();
mat.postRotate(degree);
Bitmap bMapRotate = Bitmap.createBitmap(bMap, 0, 0, bMap.getWidth(), bMap.getHeight(), mat, true);
bottle.setImageBitmap(bMapRotate);
}
使用android.os.Handler
而不是像这样的计时器-
@override
public boolean onTouch(View v, MotionEvent event){
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
angle += 40;
spin(angle);
if(angle >=360)
angle = 0;
}
}, 2*1000);
}