在随机位置产卵

时间:2015-06-05 17:24:12

标签: java android

我有Android问题。我正在尝试制作项目,我在随机位置绘制圆圈。触摸此圆圈后,您将获得一个分数,圆圈将消失。但是我有一个问题,我的对象产生然后在没有触摸的情况下消失并在另一个位置产生。 这是我的产卵者代码。

protected void spawner(Canvas canvas,int timer){
    System.out.println(myThread.timer);
if (myThread.timer>100) {
    int x = 200 - generator.nextInt() % (myThread.screenDimX / 2);
    int y = 200 - generator.nextInt() % (myThread.screenDimY / 2);
    Paint paint = new Paint();
    paint.setStyle(Paint.Style.FILL);
    paint.setColor(Color.WHITE);
    paint.setColor(Color.parseColor("#800000"));
    canvas.drawCircle(x, y,50, paint);
    myThread.timer=0;
}
}

myThread是我的游戏循环线程。 谁能帮我这个?

2 个答案:

答案 0 :(得分:0)

我可以告诉你一件事,我不知道你是否有问题,是不是所有的UI组件操作都应该在UI线程上进行,而不是在你的其他线程。 目前还不清楚是否在定时器线程或UI线程的回调上调用此方法。如果您从UI线程调用它,则可能是UI线程和Timer线程同时写入myThread.timer,并且看起来如此,您无法保护它。

答案 1 :(得分:0)

你只是在myThread.timer大于100时绘制那个圆圈。你需要做的是将它添加到ArrayList,或者你想要的任何数据结构,然后不断循环遍历那个ArrayList和绘制所有圆圈。