我有一个应用程序,其中有一个文本视图,显示硬币00和一个按钮显示奖励视频广告,向用户提供10个硬币&现在,当用户有30个硬币时,点击购买按钮时,它会将文本硬币设置为00,但是当他的硬币少于30个硬币时,它会将文本设置为负数(假设我有20个硬币)当我点击购买时,它将文本设置为-10)。
我想要什么
我想在用户点击购买按钮时显示祝酒,当他的硬币为0并且我不希望该值变为负数时。
我的代码
mText = (TextView) findViewById(R.id.money);
coinCount = 0;
mText.setText(" " + coinCount);
Button button = (Button) findViewById(R.id.buynow);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (coinCount <= 0) {
Toast.makeText(MainActivity.this, "You dont have enough coins", Toast.LENGTH_SHORT).show();
} else {
coinCount = coinCount - 30;
mText.setText(String.valueOf(coinCount));
}
}
});
答案 0 :(得分:0)
更改此
if (coinCount <= 0)
到此:
if (coinCount <= 29)
答案 1 :(得分:0)
只需更改条件:
if (coinCount <= 0)
到
if (coinCount < 30)
因为当它小于30时你不应该减去coinCount
的任何值。你只需告知用户没有足够的硬币。
我还建议您存储要在变量中减去的硬币数量。这样,当有一天你决定改变要减去的硬币数量时,你可以只在一个地方做,而不是使用这个值的整个代码。例如:
mText = (TextView) findViewById(R.id.money);
int costOfTransactionInCoins = 30; // new variable
coinCount = 0;
...
if (coinCount < costOfTransactionInCoins) {
... }
else {
coinCount = coinCount - costOfTransactionInCoins;
...
}
...