照例先上传效果图:
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>"));
}
});