Android TextWatcher监控EditText中的输入内容并限制其个数
发布时间 - 2026-01-11 00:35:55 点击率:次布局中EditText在android布局中经常用到,对EditText中输入的内容也经常需要进行限制,我们可以通过TextWatcher去观察输入框中输入的内容,作个笔记。

主布局:
<?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:ellipsize="marquee" android:focusable="true" android:marqueeRepeatLimit="marquee_forever" android:focusableInTouchMode="true" android:scrollHorizontally="true" android:text="Please input the text:" /> <EditText android:id="@+id/ET" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="number"/> </LinearLayout>
java代码:
package com.android.text;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class TextWatcherDemo extends Activity {
private TextView mTextView;
private EditText mEditText;
/** Called when the activity is first created. */
@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 beforeTextChanged(CharSequence s, int arg1, int arg2,
int arg3) {
temp = s;
}
@Override
public void onTextChanged(CharSequence s, int arg1, int arg2,
int arg3) {
mTextView.setText(s);
}
@Override
public void afterTextChanged(Editable s) {
editStart = mEditText.getSelectionStart();
editEnd = mEditText.getSelectionEnd();
if (temp.length() > 10) {
Toast.makeText(TextWatcherDemo.this,
"你输入的字数已经超过了限制!", Toast.LENGTH_SHORT)
.show();
s.delete(editStart-1, editEnd);
int tempSelection = editStart;
mEditText.setText(s);
mEditText.setSelection(tempSelection);
}
}
};
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# edittext
# textwatcher
# android
# edittext字符限制
# Android TextWatcher三个回调以及监听EditText的输入案例详解
# Android开发中给EditText控件添加TextWatcher监听实现对输入字数的限制(推荐)
# Android中AutoCompleteTextView与TextWatcher结合小实例
# Android TextWatcher内容监听死循环案例详解
# 我们可以
# 大家多多
# 作个
# 已经超过了
# 框中输入
# ellipsize
# white
# color
# marquee
# focusable
# true
# id
# TextView
# layout_height
# textColor
# wrap_content
# tv
# number
# inputType
# match_parent
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
网站建设保证美观性,需要考虑的几点问题!
如何在Windows服务器上快速搭建网站?
如何快速使用云服务器搭建个人网站?
Laravel观察者模式如何使用_Laravel Model Observer配置
长沙做网站要多少钱,长沙国安网络怎么样?
高端智能建站公司优选:品牌定制与SEO优化一站式服务
Python文件流缓冲机制_IO性能解析【教程】
5种Android数据存储方式汇总
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
Laravel如何使用Blade模板引擎?(完整语法和示例)
Laravel集合Collection怎么用_Laravel集合常用函数详解
Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】
laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
手机网站制作与建设方案,手机网站如何建设?
想要更高端的建设网站,这些原则一定要坚持!
Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】
Python并发异常传播_错误处理解析【教程】
Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理
,南京靠谱的征婚网站?
如何用低价快速搭建高质量网站?
中山网站制作网页,中山新生登记系统登记流程?
Laravel如何记录自定义日志?(Log频道配置)
郑州企业网站制作公司,郑州招聘网站有哪些?
Laravel怎么配置S3云存储驱动_Laravel集成阿里云OSS或AWS S3存储桶【教程】
laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法
Python结构化数据采集_字段抽取解析【教程】
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
js代码实现下拉菜单【推荐】
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
js实现点击每个li节点,都弹出其文本值及修改
如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
javascript读取文本节点方法小结
Laravel如何处理CORS跨域请求?(配置示例)
Java解压缩zip - 解压缩多个文件或文件夹实例
使用豆包 AI 辅助进行简单网页 HTML 结构设计
如何用PHP快速搭建高效网站?分步指南
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
如何在自有机房高效搭建专业网站?
Python正则表达式进阶教程_复杂匹配与分组替换解析
Linux网络带宽限制_tc配置实践解析【教程】
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
香港服务器选型指南:免备案配置与高效建站方案解析
IOS倒计时设置UIButton标题title的抖动问题
Laravel如何实现用户密码重置功能?(完整流程代码)
网站建设要注意的标准 促进网站用户好感度!
高防服务器租用首荐平台,企业级优惠套餐快速部署

