Android 当文本视图相等时是否更改它们?

Android 当文本视图相等时是否更改它们?,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

我的应用程序中现在有两个文本视图。一个textView用作计数器,其他服务器用作限制。我想要完成的是当计数器等于极限时,计数器被设置回零,极限增加100

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
中,并且仅在数据更改时更新相关视图。