我正在尝试基于Lenoids的github代码完成烟花功能。我想创建两个烟花(一个白色和另一个红色),并在每两秒后连续显示它们。
这是我到目前为止所做的:
在线程中以编程方式调用按钮以显示烟花。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_congratulations);
new Thread(new Runnable() {
@Override
public void run() {
while(true){
try {
Thread.sleep(100);
button10.callOnClick(); //for red fireworks
button11.callOnClick(); //for white fireworks
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
}
问题在于,如果我增加睡眠方法的值,那么烟花就不会显示出来了。如何完成两秒连续烟花功能?
这是烟花代码:
new ParticleSystem(MyClass.this, 100, R.drawable.star_pink, 800) .setSpeedRange(0.1f, 0.25f) .oneShot(view, 70);
答案 0 :(得分:0)
如果你想每两秒钟运行一次烟花,那么使用Handler而不是thread和thread.sleep。
final Handler ha=new Handler();
ha.postDelayed(new Runnable() {
@Override
public void run() {
button10.callOnClick();
button11.callOnClick();
ha.postDelayed(this, 2000);
}
}, 2000);
希望有所帮助。