android edittext最多输入,android 中如何限制 EditText 最大输入字符数
方法一:
在 xml 文件中设置文本编辑框属性作字符数限制
如:android:maxLength="10" 即限制最大输入字符个数为10
方法二:
在代码中使用InputFilter 进行过滤
//editText.setFilters(new InputFilter[]{new
InputFilter.LengthFilter(20)}); 即限定最大输入字符数为20
public class TextEditActivity extends Activity {
@Override
public void
onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditText editText = (EditText)findViewById(R.id.entry);
editText.setFilters(new InputFilter[]{new
InputFilter.LengthFilter(20)});
}
}
方法三:
利用 TextWatcher 进行监听
package cie.textEdit;
import android.text.Editable;
import android.text.Selection;
import android.text.TextWatcher;
import android.widget.EditText;
public class MaxLengthWatcher implements TextWatcher {
private int maxLen = 0;
private EditText editText = null;
public MaxLengthWatcher(int maxLen, EditText
editText) {
this.maxLen = maxLen;
this.editText = editText;
}
public void afterTextChanged(Editable arg0)
{
// TODO Auto-generated method
stub
}
public void beforeTextChanged(CharSequence
arg0, int arg1, int arg2,
int arg3)
{
// TODO Auto-generated method
stub
}
public void onTextChanged(CharSequence arg0,
int arg1, int arg2, int arg3) {
// TODO Auto-generated method
stub
Editable editable =
editText.getText();
int len =
editable.length();
if(len >
maxLen)
{
int
selEndIndex = Selection.getSelectionEnd(editable);
String str =
editable.toString();
//截取新字符串
String newStr
= str.substring(0,maxLen);
editText.setText(newStr);
editable =
editText.getText();
//新字符串的长度
int newLen =
editable.length();
//旧光标位置超过字符串长度
if(selEndIndex
> newLen)
{
selEndIndex
= editable.length();
}
//设置新光标所在的位置
Selection.setSelection(editable,
selEndIndex);
}
}
}
对应的 activity 部分的调用为:
package cie.textEdit;
import android.app.Activity;
import android.os.Bundle;
import android.text.InputFilter;
import android.widget.EditText;
public class TextEditActivity extends Activity {
@Override
public void
onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditText editText =
(EditText) findViewById(R.id.entry);
editText.addTextChangedListener(new
MaxLengthWatcher(10, editText));
}
}
限制输入字符数为10个
main.xml 文件
encoding="utf-8"?>
android:layout_width="fill_parent"
android:layout_height="fill_parent">
android:id="@+id/label"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Type here:"/>
android:id="@+id/entry"
android:singleLine="true"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@android:drawable/editbox_background"
android:layout_below="@id/label"/>
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/entry"
android:layout_alignParentRight="true"
android:layout_marginLeft="10dip"
android:text="OK" />
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/ok"
android:layout_alignTop="@id/ok"
android:text="Cancel" />
效果为输入了10个字符后,光标停在末尾
android edittext最多输入,android 中如何限制 EditText 最大输入字符数相关推荐
- 文件系统中文件的最长(字符数)绝对路径 Longest Absolute File Path
为什么80%的码农都做不了架构师?>>> 问题: Suppose we abstract our file system by a string in the followin ...
- python弹窗输入_Python中使用tkinter弹窗获取输入文本
# -*- coding: cp936 -*- from tkinter import * from tkinter import messagebox root = Tk() root.title( ...
- 【转】android 中如何限制 EditText 最大输入字符数
原文网址:http://blog.csdn.net/fulinwsuafcie/article/details/7437768 方法一: 在 xml 文件中设置文本编辑框属性作字符数限制 如:andr ...
- android 中如何限制 EditText 最大输入字符数
方法一: 在 xml 文件中设置文本编辑框属性作字符数限制 如:android:maxLength="10" 即限制最大输入字符个数为10 方法二: 在代码中使用InputFilt ...
- edtext 从右边开始输入 安卓_Android开发之EditText属性详解
1.EditText输入的文字为密码形式的设置 (1)通过.xml里设置: 把该EditText设为:android:password="true" // 以".&quo ...
- android手机进行android开发,如何在Android手机上进行自动化测试(上)
版权声明:允许转载,但转载必须保留原链接:请勿用作商业或者非法用途 前言 通过阅读本节教程,你将了解到以下内容: 如何在脚本代码中.运行脚本时指定手机 如何填写--device Android:/// ...
- android 扫码枪 字符数少掉,BarTender条码字符数莫名变少是怎么回事?
小伙伴们在使用BarTender 制作条码标签时,偶尔可能会发现制作的条码字符数变少了,为什么会这样呢?要怎么解决?本文小编就来教大家鉴定BarTender条码字符数变少的原因,并帮助小伙伴们解决问题 ...
- 统计“3_人民日报语料”文本中的字符数和词数,把文件分别保存为 ansi, UTF8,UTF16,unicode 格式
统计"3_人民日报语料"文本中的字符数和词数,把文件分别保存为 ansi, UTF8,UTF16,unicode 格式; 首先,统计文件的字符数,有两种方法.第一种是将文件复制到w ...
- java 读取文件 二进制_JAVA中读取文件(二进制,字符)内容的几种方法总结
public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片.声音.影像等文件. */ public static void readFileB ...
最新文章
- 基于openCV的项目实战1:信用卡数字识别
- 2840 页的计算机毕业论文,这位华人小哥的博士论文究竟写了啥?
- SparkSQL ThriftServer 安全相关功能的现状分析
- js输出一个菱形_Threejs使用菱形正方形算法,中点替换算法生成随机地形
- c dup 函数
- Apache配置代理服务器的方法(2)
- 【人脸表情识别】情绪识别相关会议、比赛汇总(2018-2020)
- android xml 未能解析文件,Android Studio中“无法解析符号R”
- Java批量生成数据库测试数据
- dbms_排名前50位的DBMS面试问答
- 故障error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: “
- DPlayer播放器本地化P2P解析加速版源码
- 工作流activiti5 使用流程变量
- quickselect java,实现快速选择
- Python【WINAPI】钩子程序获取账号密码等键盘输入信息
- 关于call和apply函数的区别及用法
- python等比例压缩图片_python(PIL)图像处理(等比例压缩、裁剪压缩) 缩略(水印)图详解...
- 【CCCC】L2-002 链表去重 (25分),,把一个链表拆成两个
- pyspark:basic_operating_1
- 信创终端违规外联案例分析及防控措施
热门文章
- 2020 年,程序员如何拥抱 5G ?
- 收下这份说明书,原来迈进智能计算的大门如此简单
- 双十一,不玩盖楼,直接大额降价!
- 解密 TCP/IP!
- CSDN 创始人蒋涛:AI 定义的开发者时代
- 支付宝辟谣交易 5 万受监控;App Store 宕机;谷歌抛弃 AI | 极客头条
- Android 8.1 频频被曝 Bug,是要赶超苹果吗?
- 【linux(1),八年Java开发心路历程
- 吴军信息论40讲_吴军:有时候成功比失败更糟糕!顺势而为还是走弯路,就看一件事...
- java中element转换_java中实体类与xml的element相互转换