java如何在画布上随机绘制对象
在SurfaceView中,我有5个在一定时间后随机创建的对象,
我用这样的画法画它们:
bby.draw(canvas);
hyd.draw(canvas);
hole.draw(canvas);
我的问题是,对象不会随机绘制
例如:如果hyd
是在bby
之前创建的,它将不会绘制,直到bby
被创建并绘制,并且与其他人一样
我认为是因为Draw方法按线条的顺序绘制对象,比如:
1 bby.draw(canvas);
2 hyd.draw(canvas);
3 hole.draw(canvas);
但我不想那样
我该怎么解决这个问题?(希望你明白我的意思)
# 1 楼答案
这是因为只有在调用draw方法时,您定义的每个对象才会在画布中绘制。。。但这不会异步发生,即。 按此顺序:
就是要绘制的对象
你可以在a和b之间生成一个随机数,并根据这个数改变抽签顺序
# 2 楼答案
如果将可绘制对象放入列表中,则可以访问随机索引以创建随机行为。List的remove方法使每次只绘制一次变得很容易