方法一:利用TextWatcher

  1. editText.addTextChangedListener(new TextWatcher() {
  2. private CharSequence temp;
  3. private boolean isEdit = true;
  4. private int selectionStart ;
  5. private int selectionEnd ;
  6. @Override
  7. public void beforeTextChanged(CharSequence s, int arg1, int arg2,
  8. int arg3) {
  9. temp = s;
  10. }
  11. @Override
  12. public void onTextChanged(CharSequence s, int arg1, int arg2,
  13. int arg3) {
  14. }
  15. @Override
  16. public void afterTextChanged(Editable s) {
  17. selectionStart = editText.getSelectionStart();
  18. selectionEnd = editText.getSelectionEnd();
  19. Log.i("gongbiao1",""+selectionStart);
  20. if (temp.length() > Constant.TEXT_MAX) {
  21. Toast.makeText(KaguHomeActivity.this,
  22. R.string.edit_content_limit, Toast.LENGTH_SHORT)
  23. .show();
  24. s.delete(selectionStart-1, selectionEnd);
  25. int tempSelection = selectionStart;
  26. editText.setText(s);
  27. editText.setSelection(tempSelection);
  28. }
  29. }
  30. });

方法二:利用InputFilter

  1. editText.setFilters(new InputFilter[]{new InputFilter.LengthFilter(100)});  //其中100最大输入字数

方法三:在XML中设定

  1. <EditText
  2. .
  3. .
  4. .
  5. android:maxLength="100"
  6. />

从MS平台过来的,有些东西还真是不习惯自己做

Android---3种方式限制EditView输入字数(转载)的更多相关文章

  1. Android 两种方式实现类似水波扩散效果

    原文链接 https://mp.weixin.qq.com/s/M19tp_ShOO6esKdozi7Nlg 两种方式实现类似水波扩散效果,先上图为敬 自定义view实现 动画实现 自定义view实现 ...

  2. android两种方式获取AsyncTask返回值

    获取AsyncTask返回值,在Activity中使用. 引用链接:https://www.oschina.net/code/snippet_725438_49858#72630 [1].[代码] [ ...

  3. Android 三种方式实现自定义圆形进度条ProgressBar

    一.通过动画实现 定义res/anim/loading.xml如下: <?xml version="1.0" encoding="UTF-8"?> ...

  4. Android 三种方式实现自定义圆形页面加载中效果的进度条

    转载:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=76872 一.通过动画实现 定义res/anim/loading.xml如 ...

  5. Android 五种方式实现Android底部导航栏

    https://segmentfault.com/a/1190000007697941

  6. WPF中使用文件浏览对话框的几种方式

    原文:WPF中使用文件浏览对话框的几种方式 WPF本身并没有为我们提供文件浏览的控件, 也不能直接使用Forms中的控件,而文件浏览对话框又是我们最常用的控件之一. 下面是我实现的方式 方式1: 使用 ...

  7. JPA访问数据库的几种方式

    JPA访问数据库的几种方式 本文为原创,转载请注明出处:https://www.cnblogs.com/supiaopiao/p/10901793.html 1. Repository 1.1. 通过 ...

  8. android两种基本联网方式与一种第三方开源项目的使用

    安卓请求网络的三种方式 在请求网络的时候一般常用的提交方式是post或者get请求,post请求安全,传输大小无限制,但是代码量多些,get请求是浏览器有大小限制,用户提交的信息在浏览器的地址栏显示出 ...

  9. Android数据存储五种方式总结

    本文介绍Android平台进行数据存储的五大方式,分别如下: 1 使用SharedPreferences存储数据     2 文件存储数据       3 SQLite数据库存储数据 4 使用Cont ...

随机推荐

  1. 求相同号码一天内的上网流量——mapreduce

    上网数据 1363157985066 13726230503 00-FD-07-A4-72-B8:CMCC 120.196.100.82 i02.c.aliimg.com 24 27 2481 246 ...

  2. winform form

    WinForm:Windows Form,.Net中用来开发Windows窗口程序的技术,无论是之前学的控制台程序,还是后面要学的asp.net都是调用.net框架,因此所有知识点都是一样的.新建一个 ...

  3. 初识MFC学习——Hello World

    MFC(Microsoft Foundation Classes),是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows的API,并且包含一个应用程序框架, ...

  4. 动态创建二维vector数组 C和C++ 及指针与引用的区别

    二维vectorvector<vector <int> > ivec(m ,vector<int>(n));    //m*n的二维vector 动态创建m*n的二 ...

  5. NSLog中的%@

    [NSLog中的%@] There is one additional substitution token available in Objective-C, %@, used to denote ...

  6. class int

    class int(object): """ int(x=0) -> integer int(x, base=10) -> integer Convert a ...

  7. AO中的GraphicsLayer---------元素的容器

    come from AO中的GraphicsLayer---------元素的容器 图形元素(Graphic Element)是存储于GraphicsLayer中的,本文主要涉及的接口和类主要有以下几 ...

  8. IE=EmulateIE8和IE=IE8的区别

    IE=8<meta http-equiv="X-UA-Compatible" content="IE=8" />This forces IE 8 t ...

  9. android 简易定时器

    定时器 1.在android 应用开发当中,很多时候都要用到定时器,而要实现定时器更多的时候要用到两个类:Timer,和TimerTask 2.API对Timer的解释是:

  10. 测试rest接口的两个工具使用详解(restclient+soapUI)

    http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/31/3110764.html http://www.oschina.net/news/618 ...