在游戏中以不同的方式显示分数

时间:2012-06-10 12:50:38

标签: android

我正在制作一个游戏,并希望以这样的方式显示分数:如果我的分数为0且增加10,那么分数应该从0到10的所有数字递增。得分应该停止,至少暂停一小段时间。

如果再次将分数再增加10分,则记分牌应该从10到20的每个数字递增,然后再次停止。

我尝试过使用处理程序,但在任何情况下都没有成功地让它们暂停或停止。

video中的示例演示了我要完成的任务。如果您查看右上方的记分牌,您会看到分数不断增加。以下是上述链接不起作用的网址:http://www.youtube.com/watch?v=NdZ8YupmEmA&feature=fvwrel

这是我的Runnable增加分数的代码。

final Handler mHandler=new Handler();
    mRunnable=new Runnable() {

        public void run() {
            String s = null;
                   ++i;
                   s= new Integer(i).toString();    
                   tv.setText(s);
                   mHandler.postDelayed(mRunnable,1000);       

                }

        /*protected void onStop() {
            mHandler.removeCallbacks(mRunnable);
        }*/
    };

    mHandler.postDelayed(mRunnable,1000);

我特别需要的是如何让代码停止计数。

1 个答案:

答案 0 :(得分:0)

您只需打印2个端点之间的所有数字即可。 说:

int counter = 0;
while(counter%10 != 0)
{
textView.setText(counter.toString());
counter++;
}

然后再继续循环,这次只从11开始,而不是0。

我不确定它会像你想要的那样工作,比如你的Temple Run例子。我想添加一些非常少量的sleep(),但昨天我被建议不要在Android开发中使用sleep()方法。

编辑:

确定。 This tutorial似乎很容易处理。您可以使用Handler(正如您可能猜到的那样)将相同的逻辑应用于您的分数显示机制。