我想让一个图像在 60 毫秒内可见,然后不可见,然后我想让另一个图像执行相同的操作......等等。我认为我没有正确使用计时器..因为当我运行该应用程序时,两个图像会同时打开,并且当我按下使用此功能的按钮时,两个图像不会消失。
这是一些示例代码..
timer.schedule(new TimerTask()
{
@Override
public void run()
{
LED_1.setVisibility(View.VISIBLE);
// LED_1 is an ImageView
}
}, 60);
LED_1.setVisibility(View.INVISIBLE);
timer2.schedule(new TimerTask()
{
@Override
public void run()
{
LED_2.setVisibility(View.VISIBLE);
// LED_2 is an ImageView
}
}, 60);
LED_2.setVisibility(View.INVISIBLE);
还有其他选择吗?我尝试过类似的例子..Android 应用程序如何延迟手机启动时的服务启动 https://stackoverflow.com/questions/4562269/android-app-how-to-delay-your-service-start-on-phone-boot
and
http://www.roseindia.net/java/beginners/DelayExample.shtml http://www.roseindia.net/java/beginners/DelayExample.shtml
但它没有做我想做的事..
我做错了什么吗?或者有其他方法可以做到这一点吗?
Thanks.
-Faul
为善.迪玛..
int delayRate = 60;
final Runnable LED_1_On = new Runnable()
{
public void run()
{
LED_1.setVisibility(View.VISIBLE);
handler.postDelayed(this, delayRate);
}
};
handler.postDelayed(LED_1_On, delayRate);
final Runnable LED_2_On = new Runnable()
{
public void run()
{
LED_1.setVisibility(View.INVISIBLE);
LED_2.setVisibility(View.VISIBLE);
handler3.postDelayed(this, delayRate);
}
};
handler.postDelayed(LED_2_On, delayRate);
您可以尝试使用Handler,它将smth发布到UI线程中,它可以延迟发布延迟后 http://developer.android.com/reference/android/os/Handler.html#postDelayed%28java.lang.Runnable,%20long%29
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)