由网友(森浓有荒)分享简介:在我的项目,我有一个的EditText 。我想指望在的EditText 字符,并显示在的TextView 这个数字吧。我写了下面的code和它工作正常。不过,我的问题是,当我点击退格向上计数,但我需要减小的数量。我怎么可以考虑退格?电视=(TextView中)findViewById(R.id.charCounts);...
在我的项目,我有一个的EditText
。我想指望在的EditText
字符,并显示在的TextView
这个数字吧。我写了下面的code和它工作正常。不过,我的问题是,当我点击退格向上计数,但我需要减小的数量。我怎么可以考虑退格?
电视=(TextView中)findViewById(R.id.charCounts);
文字信息=(EditText上)findViewById(R.id.textMessage);
textMessage.addTextChangedListener(新TextWatcher(){
公共无效afterTextChanged(编辑S){
我++;
tv.setText(将String.valueOf(ⅰ)+/+将String.valueOf(charCounts));
}
公共无效beforeTextChanged(CharSequence中,诠释开始,诠释计数,之后INT){}
公共无效onTextChanged(CharSequence中,诠释开始,诠释之前,诠释计数){}
});
解决方案
使用
s.length()
下面曾经提出的答案中的一个,但其效率非常低
textMessage.getText()的toString()长度()
In my project I have an EditText
. I want to count the characters in the EditText
, and show that number it in a TextView
. I have written the following code and it works fine. However, my problem is when I click Backspace it counts up, but I need to decrement the number. How can I consider Backspace?
tv = (TextView)findViewById(R.id.charCounts);
textMessage = (EditText)findViewById(R.id.textMessage);
textMessage.addTextChangedListener(new TextWatcher(){
public void afterTextChanged(Editable s) {
i++;
tv.setText(String.valueOf(i) + " / " + String.valueOf(charCounts));
}
public void beforeTextChanged(CharSequence s, int start, int count, int after){}
public void onTextChanged(CharSequence s, int start, int before, int count){}
});
解决方案
Use
s.length()
The following was once suggested in one of the answers, but its very inefficient
textMessage.getText().toString().length()
相关推荐
最新文章