Android:EditView统计用户输入的数量,限制输入!

来源:互联网 发布:js元素节点举例 编辑:程序博客网 时间:2024/04/30 22:13

无论是发帖,还是个人签名,为了防止刷屏,我们一般限制EditView输入的字数!


由于实现很简单,我直接上代码了:


<EditText    android:id="@+id/ET"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:text=""    android:hint="个性签名"    android:maxLength="32"/><TextView    android:id="@+id/tv"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="32"    android:textColor="@android:color/holo_blue_light"    android:layout_gravity="right"/>

限制输入32个字,每输入一个就算显示剩余的输入数量,

然后超过32个字时将无法输入!


import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.text.Editable;import android.text.TextWatcher;import android.widget.EditText;import android.widget.TextView;public class TestOneActivity extends AppCompatActivity {    private TextView hasnum;    private EditText content;    int num = 32;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_test_one);        hasnum = (TextView) findViewById(R.id.tv);        content = (EditText) findViewById(R.id.ET);        hasnum.setText(num+"");//监听事件       content.addTextChangedListener(new TextWatcher() {          private CharSequence temp;          private int selectionStart;          private int selectionEnd;    public void beforeTextChanged(CharSequence s, int start, int count, int after) {    }    public void onTextChanged(CharSequence s, int start, int before, int count) {       temp = s;     }        public void afterTextChanged(Editable s) {            int number = num - s.length();            hasnum.setText("" + number);            selectionStart = content.getSelectionStart();            selectionEnd = content.getSelectionEnd();            if (temp.length() > num) {             s.delete(selectionStart - 1, selectionEnd);            int tempSelection = selectionEnd;            content.setText(s);            content.setSelection(tempSelection);//设置光标在最后         }        }        });    }}




0 0
原创粉丝点击