Java 我如何组织此功能,使其按我的意愿工作
我是android studio的新手,我希望这个函数能够循环并创建一个无限球下落循环,直到两个整数不匹配为止,但是当我尝试运行它时,它只会循环一次,如果我在Java 我如何组织此功能,使其按我的意愿工作,java,android,loops,Java,Android,Loops,我是android studio的新手,我希望这个函数能够循环并创建一个无限球下落循环,直到两个整数不匹配为止,但是当我尝试运行它时,它只会循环一次,如果我在else语句中更改strike=2,应用程序就会崩溃 public void mainGameLoop(){ do { //sets Balls integer setColourint(); ball.setVisibility(View.VISIBLE); //ba
else
语句中更改strike=2
,应用程序就会崩溃
public void mainGameLoop(){
do {
//sets Balls integer
setColourint();
ball.setVisibility(View.VISIBLE);
//ball fall
float bottomOfScreen = getResources().getDisplayMetrics()
.heightPixels - (ball.getHeight() * 4);
//fall animation
ball.animate()
.translationY(bottomOfScreen)
.setInterpolator(new AccelerateInterpolator())
.setInterpolator(new BounceInterpolator())
.setDuration(9000);
//once animation is complete compares balls variable with current variable
if (colourint == ranint){
//if they are same then +1 score
score = score+1;
scr.setText(Integer.parseInt(String.valueOf(score)));
} else {
//else game is over
streak = 2;
}
//repeat until game is over
} while (streak == 1);
}
一旦球到达相对布局的底部,我希望函数检查
setcoulour int
和ran int
是否相同,然后如果arescore=score+1
,球返回顶部,调用setColourInt
函数,球再次下落(依此类推)但如果不是循环结束,游戏就结束了……我为自己的无能道歉,但我无法想象你们也不记得什么时候,在编码方面是如此幼稚。非常感谢Tom您必须给UI一个机会来绘制您正在做的事情。无论使用哪种方法(onStart
,onCreate
,等等)调用mainGameLoop
,它都不会返回,因为它卡在无限循环中。这是一个错误
一种方法是创建一个
视图
,并在onDraw
方法中实现游戏绘制逻辑。在绘图时,UI线程将调用您的onDraw
方法。这里有一篇文章谈论这个方法:现在你认为“错误”是怎么回事?