我有一个显示数字的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。但是,我的计时器仍然无法工作:(,任何帮助?
答案 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
}