Android编程之TextView的字符过滤功能分析
作者:java2009cgh 发布时间:2023-05-19 20:23:36
标签:Android,TextView
本文实例分析了Android编程之TextView的字符过滤功能。分享给大家供大家参考,具体如下:
TextView可以设置接受各式各样的字符,通过过滤指定的字符来满足不同应用的输入和显示要求。
通过xml配置:
android:InputType
number 接受整数输入
numberSigned 接受有符号整数输入
numberDecimal 接受整数和小数的输入
android:digits
指定接受固定的数字,如android:digits="012345",则只接受0~5数字的输入
android:numberic
integer 接受整数输入
signed 接受有符号整数输入
decimal 接受整数和小数输入
通过java代码设置
其实以上3个属性,功能有点重复,最终都是通过java代码来对TextView设置KeyListener
KeyListener是一个接口,提供了对输入键盘按键的监听
InputFilter是一个接口,提供了对字符的过滤
android提供了实现了KeyListener和InputFilter的NumberKeyListener,而DigitsKeyListener继承了NumberKeyListener
TextView tv = new TextView(context);
//只接受整数输入
KeyListener l = new DigitsKeyListener(fasle,false);
//接受有符号整数输入
KeyListener l = new DigitsKeyListener(true,false);
//接受小数,整数输入
KeyListener l = new DigitsKeyListener(false,true);
//接受有符号整数/小数输入
KeyListener l = new DigitsKeyListener(true,true);
tv.setKeyListener(l);
如果想要实现更大自由度的过滤定制,可以自己写一个KeyListener(继承BaseKeyListener)并实现InputFilter,重写filter()函数,在filter()函数里可以实现自由的过滤。
希望本文所述对大家Android程序设计有所帮助。


猜你喜欢
- 线程组我们可以把线程归属到某个线程组中,线程组可以包含多个线程以及线程组,线程和线程组组成了父子关系,是个树形结构,如下图:使用线程组可以方
- 一、获取当前时间, 格式为: yyyy-mm-dd hh-mm-ss
- 前言在这个 Spring Security 教程中,我很乐意与您分享如何通过在 Java Web 应用程序中为用户添加角色来实现授权&
- 错误处理到目前为止,我们都没怎么介绍onComplete()和onError()函数。这两个函数用来通知订阅者,被观察的对象将停止发送数据以
- 在前面的文章中可以发现当我们通过RestTemplate调用其它服务的API时,所需要的参数须在请求的URL中进行拼接,如果参数少的话或许我
- 在.Net中,对文件(File)和文件夹(Folder)的操作可以使用File类和Directory类,也可以使用FileInfo类和Dir
- 本文实例为大家分享了Android仿微信长按录制视频并播放功能的具体代码,供大家参考,具体内容如下一、点击按钮进行录制首先要获取摄像拍照的权
- 项目要用到弹出框,还要和苹果的样式一样(Android真是没地位),所以就自己定义了一个,不是很像(主要是没图),但是也还可以。废话不多说了
- 前言上一节我们搭建起了服务注册中心,为各个服务提供者和消费者提供一个桥梁,这一节我们搭建一个服务提供者,注册到注册中心开源地址:https:
- 工作需要,经常需要实现api接口,但每次都是大同小异,我就考虑是否可以将这种重复性的工作配置化。我就写一个模板api,然后所有的HTTP请求
- 本文实例为大家分享了Android实现支付宝记账饼图,点击旋转到最下面,供大家参考,具体内容如下代码:package com.example
- 本文实例讲述了Spring实战之清除缓存操作。分享给大家供大家参考,具体如下:一 配置文件<?xml version="1.
- 前言socket是软件之间通讯最常用的一种方式。c#实现socket通讯有很多中方法,其中效率最高就是异步通讯。异步通讯实际是利用windo
- 看一段程序String t = "a||b||c||d";String[] temp = t.split("\
- 写在前面从Java 1.0开始,引入java.io包;到Java 1.4再扩展了java.nio包;再到java 1.7又添加了新的流类,使
- 本文介绍如何在使用C#开发WinForm程序时,获取程序文件的物理路径。这个物理路径可以用于定位程序所在的目录,从而进行日志创建等扩展操作。
- 前言最近在阅读 .NET Threadpool starvation, and how queuing makes it worse 这篇博
- http://mp.baomidou.com/#/?id=%e7%ae%80%e4%bb%8b 这个是mybatisplus的官方文档,上面
- 智能指针(auto_ptr) 这个名字听起来很酷是不是?其实auto_ptr 只是C++标准库提供的一个类模板,它与传统的new/delet
- 简述mysq5.7之后新增了json类型,但是在使用的过程中,Json数组中的值小于Integer.MAX_VALUE,则反序列化时会转成L