实现在矩形框中输入文字,可以显示剩余字数的功能
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实现在矩形框中输入文字,可以显示剩余字数的功能相关的知识,希望对你有一定的参考价值。
如下图:
要实现上面的功能,需要做到三点:
1、实现矩形框布局
思路就是矩形框作为整个布局的一个background,在drawable中创建一个shap.xml样式文件
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <padding android:bottom="1dp" android:left="1dp" android:right="1dp" android:top="1dp" /> <!-- 设置圆角矩形 --> <!--<corners android:radius="3dp" />--> <stroke android:width="1px" android:color="#000" /> <solid android:color="#ffff" /> </shape>
在布局文件中设置 android:background="@drawable/shap"
然后将editText和Textview按照要求布局到该矩形区域中
2、隐藏editText的下划线
默认情况下,editText中输入文字后,下面都会有下划线,可以使用 android:background="@null"
将其下划线隐藏。
3、计算剩余字数
这个问题可以通过对editText控件调用addTextChangedListener()方法实现监听
final int maxNum = 500; final TextView leftNum = (TextView) findViewById(R.id.leftNum); EditText ed = (EditText) findViewById(R.id.nikeName); ed.addTextChangedListener(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) { } @Override public void afterTextChanged(Editable s) { leftNum.setText("剩余字数:"+ (maxNum-s.length())); } });
以上是关于实现在矩形框中输入文字,可以显示剩余字数的功能的主要内容,如果未能解决你的问题,请参考以下文章