android 过滤英文字符,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程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值