Android 当文本视图相等时是否更改它们?
我的应用程序中现在有两个文本视图。一个textView用作计数器,其他服务器用作限制。我想要完成的是当计数器等于极限时,计数器被设置回零,极限增加100Android 当文本视图相等时是否更改它们?,android,android-widget,Android,Android Widget,我的应用程序中现在有两个文本视图。一个textView用作计数器,其他服务器用作限制。我想要完成的是当计数器等于极限时,计数器被设置回零,极限增加100 private int i = 0; Spinner spinnerMonsters = (Spinner) findViewById(R.id.spinnerMonsters); TextView textViewBattleResults = (TextView) findViewById(R.id.textViewBattleResult
private int i = 0;
Spinner spinnerMonsters = (Spinner) findViewById(R.id.spinnerMonsters);
TextView textViewBattleResults = (TextView) findViewById(R.id.textViewBattleResults);
TextView textViewXPValue = (TextView) findViewById(R.id.textViewXPValue);
TextView textViewXpNextLevel = (TextView) findViewById(R.id.textViewXpNextLevel);
if (textViewXPValue.getText().toString().equals(textViewXpNextLevel.getText().toString())) {
int newLimit = Integer.parseInt(textViewXpNextLevel.getText().toString()) + 100;
textViewXpNextLevel.setText(newLimit + "");
textViewXPValue.setText("0");
}
else {
textViewXPValue.setText(textViewXPValue.getText().toString());
textViewXpNextLevel.getText().toString();
}
//Monster sequences
if (spinnerMonsters.getSelectedItem().toString().equals("(0) Training Dummy")) {
textViewBattleResults.setText("You have killed Training Dummy for 10 experience points!");
i = i+10;
textViewXPValue.setText(String.valueOf(i));
}
else {
textViewBattleResults.setText(" ");
textViewXPValue.setText(textViewXPValue.getText().toString());
}
if (spinnerMonsters.getSelectedItem().toString().equals("(2) Cockroach")) {
textViewBattleResults.setText("You have killed a Cockroach for 27 experience points!");
i = i+27;
textViewXPValue.setText(String.valueOf(i));
}
else {
textViewBattleResults.setText(" ");
textViewXPValue.setText(textViewXPValue.getText().toString());
}
}
});
这里的问题是,当点击按钮时,计数器将计数10。但当计数器等于极限值时,极限值增加100,计数器保持不变,不会重置回零
有什么建议吗
编辑
此外,如果计数器等于或大于极限,我将如何执行相同的操作?您不会将i的值重置为零。首先将xpvalue的文本设置为零,然后将其文本设置为i的当前值,该值不是零。似乎不是完整代码。你们在哪里把计数器增加10?哇,太简单了。。。你知道我会怎么改变它,如果计数器超过限制,它也会重置吗?如计数器=137和极限=100?将xpNextLevel的值转换为int,并将其与i进行比较,而不是检查xpvalue和xpNextLevel的文本是否正确equal@CoreyWilliams您的实现在某种程度上是有缺陷的,视图应该只向用户显示数据,而不是为用户保存数据,数学应该像检查
(137>100)
,将计数器
和限制
的值存储在int
中,并且仅在数据更改时更新相关视图。