防止TextView中的负数

时间:2012-08-22 05:29:14

标签: android

我有一个显示数字的TextView(在这种情况下,数字是10)。

现在,我有一个按钮,因此用户必须按下该按钮10次才能使数字达到0,从而进入下一级别。但是,

我可以继续按下该按钮,然后它开始回到底片(-1,-2等)。

我试着想一想如何防止这种情况,但我很遗憾......有什么想法吗?

----------------------------------- EDIT ----------- ------------------------------

好的,所以这是我的更新(我让它停在0):

public void onClick(View v) {
        // TODO Auto-generated method stub

        if (scr >= 1) {

            scr = scr - 1;
           TextView Score = (TextView) findViewById(R.id.Score);
           Score.setText(String.valueOf(scr));
        }

        if (scr == 10) 
        {
               aCounter.start();
        }

        if (scr == 1) 
        {
            aCounter.cancel();
            new AlertDialog.Builder(Tap_Game_Activity.this)
             .setTitle("Congratulations!").setMessage("Go to Level 2?")
             .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
              public void onClick(DialogInterface AlertDialog, int PositiveButton) {
                  setContentView(R.layout.activity_level02_activity);
              }
               })
             .setNegativeButton("No", new DialogInterface.OnClickListener() {
                  public void onClick(DialogInterface AlertDialog, int NegativeButton) {
                   }
                   }).show();
        }

    }});
}

(编辑!):我通过将2'Else If'语句更改为'If'语句来修复AlertDialog。但是,我的计时器仍然无法工作:(,任何帮助?

4 个答案:

答案 0 :(得分:1)

int i=10; 

b1.setOnClickListener(new OnClickListener() 
            {

                @Override
                public void onClick(View arg0) 
                {
                    i--;
                    t1.setText(""+i);
                    int s1=(Integer.parseInt(t1.getText().toString()));
                    if(s1<=0)
                    {
                        b1.setEnabled(false);
                    }

                }
            });

答案 1 :(得分:0)

一切都与逻辑有关。

您必须检查条件if ( YourCount < 0 ),然后您必须禁用该按钮或根据条件不在textView中设置值。

答案 2 :(得分:0)

这似乎与Android没有任何关系,但更多与Java有关。您只是想确保您的代码不允许您低于0。

你的代码可能是这样的:

如果按钮被击中 然后从x中减去1,将setText减去x

你想要扔掉一些也检查数字是否大于零的东西

像:

如果按钮被击中&amp;&amp; x大于0 然后从x中减去1,将setText减去x

如果是这种情况,那么我建议你离开Android平台,做一些Java教程和例子。

答案 3 :(得分:0)

假设number是您在TextView中显示的变量,请考虑以下代码,

int number = 10; 

if ( number > 0 ) 
{
    yourTextView.setText ( String.valueOf ( number ) ); 
}
else
{
    // do not set text
}