Java 如何将editText的字母数转换为变量?

Java 如何将editText的字母数转换为变量?,java,string,android-edittext,Java,String,Android Edittext,我想知道目前参赛的人数。只要不删除它,它也可以工作。如果删除了某些内容,则长度不会更改。应该突出显示已编写的部分。我能做什么 public class TypeSpeed extends AppCompatActivity { private TextView tvactivetext; private EditText etTextInput; private TextWatcher text = null; int randomnumber; @

我想知道目前参赛的人数。只要不删除它,它也可以工作。如果删除了某些内容,则长度不会更改。应该突出显示已编写的部分。我能做什么

public class TypeSpeed extends AppCompatActivity {
    private TextView tvactivetext;
    private EditText etTextInput;

    private TextWatcher text = null;
    int randomnumber;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_type_speed);
        randomnumber= (short) (Math.random() * (2 - 0 + 1) + 0);

        final String[] texte = {"Dies ist der erste Text und die Schwierigkeit ist meist nicht die Geschwindigkeit sondern die Anfälligkeit für ", "Dies ist der zweite Text", "Dies ist der dritte Text", "Dies ist der vierte Text"};
        SpannableString str;
        str = new SpannableString(texte[randomnumber]);

        tvactivetext = (TextView)findViewById(R.id.tvactivetext);
        etTextInput = (EditText) findViewById(R.id.editTextInputText);

        tvactivetext.setText(str);

        text = new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {

            }

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                int length = etTextInput.length();
                str.setSpan(new BackgroundColorSpan(Color.GREEN), 0, length, 0);
                tvactivetext.setText(str);


            }

            @Override
            public void afterTextChanged(Editable s) {


            }
        };

        etTextInput.addTextChangedListener(text);


    }

}


你好,谢谢你的回答。不知何故,角色扮演不起作用。错误消息:“找不到符号方法charAT(int)”将整个方法添加到问题中。另外,请确切说明当前代码的情况以及您希望发生的情况。我已编辑了我的帖子。你能再检查一下吗这在大多数情况下都有效。但当我按delete键时,它不会影响。删除时会发生什么?没有。它不会更改高亮显示字符的数量。
int length = etTextInput.getText().toString().length();