`
zkl_1987
  • 浏览: 245814 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

android 笔记 --- InputFilter实现EditText文本输入过滤器

阅读更多
EditText是Android的文本输入框控件,这地球人应该都知道的了,但是默认的EditText是无所不能输入的,有时候我们需要设计一款软件,而且是给小孩子使用的,而且需要屏蔽以下未成年人所不能涉及的内容,也就是屏蔽某些所不能输入的文字的时候,该如何做呢?

其实Android的SDK早已经为我们想过这个问题了,它为我们提供了一个叫做InputFilter的东西,通过它我们可以轻松的设计一个过滤器,用于屏蔽用户的某些输入,或者将输入改成某些良性的内容,从而解决了以上的问题。

实现InputFilter过滤器,需要覆盖一个叫filter的方法。

public abstract CharSequence filter ( 
CharSequence source,  //输入的文字 
int start,  //开始位置 
int end,  //结束位置 
Spanned dest, //当前显示的内容 
int dstart,  //当前开始位置 
int dend //当前结束位置 
);


以下实现的InputFilter为无论输入什么内容,都被自动替换成“ATAAW.COM”。

editText.setFilters(new InputFilter[] { 
new InputFilter() {    
public CharSequence filter(CharSequence src, int start, int end, Spanned dst, int dstart, int dend) {   
        return src.length() < 1 ? dst.subSequence(dstart, dend) : "ATAAW.COM";   
    }   
} });


由以上实例我们可以实现这样一个功能,让EditText控件无法输入任何内容,如何做呢?只需要将以上的“ATAAW.COM”替换成“”即可,每次输入都等于没输入任何内容。

分享到:
评论

相关推荐

    Android-- EditText与InputFilter实现文本对比

    这篇博客“Android-- EditText与InputFilter实现文本对比”探讨了如何使用`InputFilter`来实现文本对比功能,以达到特定的输入限制或者数据验证目的。我们可以通过分析`MyFilterTest.java`这个源码文件来深入理解这...

    Android开发之EditText字符串过滤器InputFilter

    总之,Android的EditText字符串过滤器InputFilter是一个强大的工具,它允许开发者定制输入行为,提高应用的数据验证和用户体验。理解并熟练掌握InputFilter的使用,对于Android开发者来说是非常重要的技能之一。

    InputFilter实现EditText文本输入过滤器实例代码解析

    EditText是Android的文本输入框控件,这地球人应该都知道的了,但是默认的EditText是无所不能输入的,有时候我们需要设计一 款软件,而且是给小孩子使用的,而且需要屏蔽以下未成年人所不能涉及的内容,也就是屏蔽...

    Android--EditText的富文本组件

    在Android开发中,EditText是用于用户输入文本的基本控件,但有时我们可能需要更复杂的文本编辑功能,如插入图片、格式化文本等,这就是富文本编辑器的角色。本篇文章将详细探讨如何在Android中实现一个基于原生...

    安卓EditText输入框相关-带账号输入格式化的EditText.rar

    - 通过`setFilters()`方法为EditText添加自定义过滤器,实现更复杂的输入格式验证,如手机号码、身份证号等格式要求。 4. **监听输入变化** - `addTextChangedListener()`方法可以添加TextWatcher监听器,实现...

    Android的edittext在弹出框中实现输入自动千分位分隔和金额限制

    这个自定义控件"Android的edittext在弹出框中实现输入自动千分位分隔和金额限制"就解决了这样的问题。 首先,我们需要理解的是`EditText`的基本用法。`EditText`是继承自`TextView`的,它添加了文本编辑功能。我们...

    安卓Android源码——(EditText文本编辑).rar

    自定义输入过滤器** `EditText`支持过滤器(InputFilter),可以限制用户输入的字符类型或数量: ```java editText.setFilters(new InputFilter[]{new InputFilter.LengthFilter(10)}); ``` **6. 表单验证** 在...

    EditText限制输入中文或英文字数

    在Android开发中,`EditText` 是一个非常常用的控件,用于接收用户输入的文字信息。有时,根据应用的需求,我们可能需要对用户输入的内容进行限制,比如限制只能输入一定数量的中文字符或英文字符(包括字母和数字)...

    android edittext表情过滤

    在Android开发中,EditText是用户输入文本的常见组件,它允许用户输入文本并进行各种操作。然而,有时候我们并不希望用户在EditText中输入特定类型的数据,例如系统或自定义的emoji表情。在这种情况下,我们需要实现...

    android 中如何限制 EditText 最大输入字符数

    限制 EditText 最大输入字符数可以通过三种方法实现:在 xml 文件中设置文本编辑框属性、在代码中使用 InputFilter 进行过滤、利用 TextWatcher 进行监听。开发者可以根据实际情况选择适合的方法。

    EditView输入过滤器InputFilter

    `InputFilter`是Android提供的一个接口,它允许我们对`EditText`中的输入内容进行过滤和限制。通过创建自定义的`InputFilter`,我们可以实现各种输入规则,比如限制字符长度、只允许特定字符输入、格式化输入等。...

    Android EditText 正则表达式 限制数字、字母、字符 输入 密码框

    在Android开发中,`EditText`是用于用户输入文本的基本组件,常常用于收集用户的数据,如密码、邮箱地址等。为了确保用户输入的数据符合特定格式,我们可以利用正则表达式(Regular Expression)进行验证。正则...

    Android限制Edittext输入Emoji表情符

    总结,限制`EditText`输入Emoji表情符主要通过自定义`InputFilter`实现,通过检查输入字符的Unicode属性或者借助第三方库进行判断过滤。这有助于保持应用的数据一致性,避免因不期望的字符输入导致的问题。在实际...

    android EditText禁止输入法表情

    在Android开发中,`EditText` 是一个非常常用的控件,用于接收用户输入的文字。然而,在当前的移动设备环境中,许多用户喜欢使用各种表情符号来增强沟通的趣味性。但有些场景下,例如登录、注册或者数据录入等,我们...

    Android应用源码之(EditText文本编辑)-IT计算机-毕业设计.zip

    在Android应用开发中,EditText是不可或缺的一个组件,它允许用户输入和编辑文本。这份源码Demo专注于EditText的使用,对于毕业设计或者Android编程学习者来说,是一个很好的实践案例。下面我们将详细探讨EditText的...

    Android EditText 禁止emoj表情输入

    `InputFilter`是`EditText`用来过滤输入字符的接口,我们可以创建一个实现该接口的类,然后在`EditText`中设置这个过滤器,以阻止emoji字符的输入。以下是一个简单的`InputFilter`实现示例: ```java public class ...

    Android应用源码之(EditText文本编辑).zip

    4. **输入过滤与验证**:通过`InputFilter`,开发者可以限制用户输入的字符类型或者范围。例如,只允许输入数字或设定输入长度。源码分析可以帮助理解如何自定义过滤规则。 5. **自定义样式**:除了默认样式,...

    安卓开发-Android Form EditText 验证输入合法性的编辑框.zip.zip

    - InputFilter过滤器:为EditText设置InputFilter,控制输入字符的合法性。 5. 自定义验证器: - 创建自定义验证器类,继承自Validator或者实现Validator接口,定义验证方法。 - 在Activity或Fragment中实例化并...

    Android中EditText的常用效果实现

    - **InputFilter过滤器**:`InputFilter`允许我们对用户输入的内容进行过滤或限制,例如限制输入字符的数量、格式等。 4. **样式设置** - **颜色和字体**:使用`android:textColor`和`android:textColorHint`分别...

Global site tag (gtag.js) - Google Analytics