我正在尝试使用canvas在android / java中创建雨动画。
问题是雨后的雨滴走出屏幕,它们重新出现在空中,而不是出现在云中。
我想要的是,它们应该出现在云层中,每排雨滴之间的距离应该保持不变。
然而,在它们离开屏幕后,每行之间的距离会发生变化,并且它们会相互堆叠。
我该如何解决?
counter = 0;
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 10; j++) {
if(yrain[counter]<c.getHeight()){
yrain[counter] = 400+ yAdder[counter] +j*50;
yAdder[counter]+=rainSpeed;
}else{
yAdder[counter]=0;
yrain[counter] = 400+ yAdder[counter];
}
xrain[counter] = 300+ ((50) * i);
c.drawBitmap(rain[counter], xrain[counter], yrain[counter],null);
counter++;
}
}
答案 0 :(得分:5)
这是我的建议 - 我几年前在需要显示一些情节动画时已经完成了这个:
完成此圈子后,例如:
for(step=0;step<(full_cycle_steps);step++)
{ // update Y position downwards
perform_animation();
}
然后重新启动重复的动画。
在这里您可以找到一些具有洞察力的参考资料:
从这里开始,您应该可以轻松完成雨动画。