EditText监听方法,实时的判断输入多少字符

最近在写一个小项目,其中有一点用到了显示EditText中输入了多少个字符,像微博中显示剩余多少字符的功能。在EditText提供了一个方法addTextChangedListener实现对输入文本的监控。下边是我自己写的一个Demo。

代码实现:

布局文件main.xml

[html] view plain copy <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/tv" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="@android:color/white" android:text="Please input the text:" /> <EditText android:id="@+id/ET" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>

Activity

[java] view plain copy package com.damai.test; import android.app.Activity; import android.os.Bundle; import android.text.Editable; import android.text.TextWatcher; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; public class TestActivity extends Activity { private TextView mTextView; private EditText mEditText; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mTextView = (TextView)findViewById(R.id.tv); mEditText = (EditText)findViewById(R.id.ET); mEditText.addTextChangedListener(mTextWatcher); } TextWatcher mTextWatcher = new TextWatcher() { private CharSequence temp; private int editStart ; private int editEnd ; @Override public void onTextChanged(CharSequence s, int start, int before, int count) { // TODO Auto-generated method stub temp = s; } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { // TODO Auto-generated method stub // mTextView.setText(s);//将输入的内容实时显示 } @Override public void afterTextChanged(Editable s) { // TODO Auto-generated method stub editStart = mEditText.getSelectionStart(); editEnd = mEditText.getSelectionEnd(); mTextView.setText("您输入了" + temp.length() + "个字符"); if (temp.length() > 10) { Toast.makeText(TestActivity.this, "你输入的字数已经超过了限制!", Toast.LENGTH_SHORT) .show(); s.delete(editStart-1, editEnd); int tempSelection = editStart; mEditText.setText(s); mEditText.setSelection(tempSelection); } } }; }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

时间: 2024-10-26 14:38:37

EditText监听方法,实时的判断输入多少字符的相关文章

EditText监听方法,实时的判断输入多少字符_Android

最近在写一个小项目,其中有一点用到了显示EditText中输入了多少个字符,像微博中显示剩余多少字符的功能.在EditText提供了一个方法addTextChangedListener实现对输入文本的监控.下边是我自己写的一个Demo. 代码实现: 布局文件main.xml [html] view plain copy <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:androi

JS针对浏览器窗口关闭事件的监听方法集锦_javascript技巧

本文实例总结了JS针对浏览器窗口关闭事件的监听方法.分享给大家供大家参考,具体如下: 方式一:(适用于IE浏览器,而且刷新不提示,只在点击浏览器关闭按钮的时候提示) <script type="text/javascript"> window.onbeforeunload=onclose; function onclose() { if(event.clientX>document.body.clientWidth&&event.clientY<

Java接口的定义,使用,以及事件的监听方法

众所周知,类是对所有对象所共有的方法和属性的定义,即类是一个抽象的规则,定义一个类无非是两个用途,或者生成对象调用其方法,或者用作给其他类来继承,而在后一个用途上,我们要求子类必须重写父类的方法时就需要定义一个接口. 接口本身也是一个类,但是接口定义的是一个没有任何方法体实现的方法,而这也是接口定义的规则,只能定义方法名,返回值,以及参数表,而不能有实现.并且,接口不能用来直接创建对象. 在定义接口的时候,一个class类可以实现多个接口,而一个class类只能继承一个class,这也就意味着我

android如何在另一个方法里面调用ExpandableListView的监听方法

问题描述 android如何在另一个方法里面调用ExpandableListView的监听方法 我想在别的地方(比如button的click监听方法里面) 来控制listView的一级子菜单的收缩和展开,一级二级子菜单的选定. 新人报道 ,求大神... 解决方案 这是动态监听expandableListView的高度,你可以参考下. 在button的click中监听,可以吧ListView的点击事件提出来写,在button的click中调用 setListViewHeightBasedOnChi

急求eclipse切换多个打开文件的监听方法

问题描述 我拿自己编写的编辑器打开多个文件,在不同文件间切换时需要做些处理,但实在找不到合适的监听方法.望高人指点. 解决方案 解决方案二:研究下设计模式吧!对你应该有帮助!解决方案三:问了一天了都,,帮你查查去解决方案四:1,首先你能够获取当前打开的所有的编辑器2,默认情况下每次仅有一个编辑器处理top位置3,编辑器的top的变更是有专门的监听器处理的,在IEditPart的api里,自己看吧

java监听事件-java中为什么监听方法的方法参数没有对象,详细代码如下

问题描述 java中为什么监听方法的方法参数没有对象,详细代码如下 b.setOnClickListener.( new On ClickListnener( ) {方法体省略若干代码 } ); java中为什么监听方法的方法参数没有对象,详细代码如上 解决方案 b.setOnClickListener.( new On ClickListnener( ) {方法体省略若干代码 } ); Listener.这里多了一个点吧. 这里b.setOnClickListener需要一个对象,而new O

Android开发之Button事件实现与监听方法总结

本文实例总结了Android开发之Button事件实现与监听方法.分享给大家供大家参考,具体如下: 先来介绍Button事件实现的两种方法 main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="

Android编程双重单选对话框布局实现与事件监听方法示例

本文实例讲述了Android编程双重单选对话框布局实现与事件监听方法.分享给大家供大家参考,具体如下: 首先是自定义XML布局代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_pare

Android ListView里控件添加监听方法的实例详解

Android ListView里控件添加监听方法的实例详解 关于ListView,算是android中比较常见的控件,在ListView我们通常需要一个模板,这个模板指的不是住模块,而是配置显示在ListView里面的东西,今天做项目的时候发现想要添加一个ImageView监听方法,发现崩了,也许是好久没有动ListView竟然忘了不能直接在主UI的xml文件里面调用其他xml文件的控件,哪怕ListView用的是这个xml文件. [错误示范]: 直接调用ImageView这个控件是ListV