您的位置:首页 > 移动开发 > Android开发

android 输入框 实时计算剩余的输入字符数(addTextChangedListener)

2015-02-03 16:04 423 查看
照例先上传效果图:





1 布局文件很简单

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
>

<EditText
android:id="@+id/editText"
android:layout_width="fill_parent"
android:layout_height="150dp"
/>

<TextView
android:id="@+id/textView_show"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="您还可以输入"
/>

</RelativeLayout>


2 Activity 代码

定义变量
private EditText et;
private TextView tv;
int MAX_LENGTH = 500;					//最大输入字符数500
int Rest_Length = MAX_LENGTH;

oncreate中添加如下代码:

et = (EditText) findViewById(R.id.editText);
        tv = (TextView) findViewById(R.id.textView_show);
        
        tv.setText(Html.fromHtml("您还可以输入:"+"<font color=\"red\">"+500+"/500"+"</font>"));
        et.addTextChangedListener(new TextWatcher() {
            
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
                if(Rest_Length > 0){
                    Rest_Length = MAX_LENGTH - et.getText().length();
                }
            }
            
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count,
                    int after) {
                // TODO Auto-generated method stub
                tv.setText(Html.fromHtml("您还可以输入:"+"<font color=\"red\">"+Rest_Length+"/500"+"</font>"));
            }
            
            @Override
            public void afterTextChanged(Editable s) {
                // TODO Auto-generated method stub
                tv.setText(Html.fromHtml("您还可以输入:"+"<font color=\"red\">"+Rest_Length+"/500"+"</font>"));
            }
        });
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐