在写登录验证的时候,需要将用户输入的大写字符转化为小写。看了下API,只有InputFilter.AllCaps是将EditText 的小写英文字符转化为大写。好吧。依赖AllCaps在写个类似的InputFilter吧。基本上Copy AllCaps的代码,只改了两行。大家看代码吧

import android.text.InputFilter;

import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
//与InputFilter.AllCaps相反
public class LowInputFilter implements InputFilter {


@Override
public CharSequence filter(CharSequence source, int start, int end,
Spanned dest, int dstart, int dend) {
for (int i = start; i < end; i++) {
if (Character.isUpperCase(source.charAt(i))) {
char[] v = new char[end - start];
TextUtils.getChars(source, start, end, v, 0);
String s = new String(v).toLowerCase();


if (source instanceof Spanned) {
SpannableString sp = new SpannableString(s);
TextUtils.copySpansFrom((Spanned) source, start, end, null,
sp, 0);
return sp;
} else {
return s;
}
}
}

return null; // keep original
}


}

更多相关文章

  1. Channel is unrecoverably broken and will be disposed!
  2. 图片阴影
  3. Android(安卓)中TabLayout自定义选择背景滑块的实例代码
  4. 查看Android的源代码
  5. 解决android:layout_marginBottom在RelativeLayout中无效的bug
  6. android2.2 2.3状态栏区别
  7. Android第三方文件选择器aFileChooser使用方法详解
  8. 实现Android多张图片选择
  9. Android(安卓)Studio常用快捷键、Android(安卓)Studio快捷键大全

随机推荐

  1. android全平台编译ffmpeg以及x264与fdk-a
  2. Android中的基本组件
  3. Amazon 的平板能否威胁 Google
  4. Android开发者指南(1) —— Android Debu
  5. windows和linux下android sdk通用
  6. Android 性能优化之使用MAT分析内存泄露
  7. 【Android】学习笔记(9)——SQLite简单使
  8. 2012版辅助开发工具包(ADT)新功能特性介绍
  9. Mac下用Charles实现Android(安卓)http和h
  10. Android 内存优化