第18讲- UI常用组件之EditText
第18讲UI常用组件之EditText
三、文本输入框EditText
EditTex类继承自TextView。EditText是接受用户输入信息的最重要控件。在html当中,相当于<input type=”text” />
<EditText
android:id ="@+id/esitText1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="请输入数字!!"
>
</EditText>
android:maxLength="10" //控制最大可输入长度
android:ems="10" //控制输入框显示长度,但是输入长度不限
android:hint="请输入数字!" //在文本框为空时显示的文字提示信息
android:textColorHint="#00ff00" //设置提示信息的文字颜色
android:numeric="integer" //只允许输入数字,有三种属性integer(正整数),"signed"(整数),"decimal"(小数)
android:digits="123abc+.*/" //只允许输入”123abc+.*” 所罗列的数字符号,如果输入其它将不予以显示/
android:phoneNumber="true" //限制输入框中只能输入手机号码
android:password="true" //限制输入框中输入的任何内容将以"*"符号来显示
限制EditText内容的特殊方式1:
方法一、利用代码控制输入参数 addTextChangedListener
(假设,要求输入字符不能包含数字4)
EditText editText=(EditText)findViewById(R.id.editText1);
editText.addTextChangedListener(newTextWatcher() {
public void onTextChanged(CharSequence arg0, int arg1, int arg2, intarg3) {
}
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,int arg3) {
}
public void afterTextChanged(Editable s) {
String string=s.toString(); //将输入的字符s转换为String
if(string.indexOf("4")!= -1) { //判断输入的字符是否含有4
Toast.makeText(getApplicationContext(), "不能输入数字4 !",0).show();
s.clear(); //清空输入
}
}
});
限制EditText内容的特殊方式2:
方法二:利用设置filter的方法控制输入参数
(如果输入数字1,则该字符被汉字“一”代替,如果输入数字2,则该字符被汉字“二”代替,并显示)
import android.text.Spanned;
EditText editText2=(EditText)findViewById(R.id.editText2);
editText2.setFilters(new InputFilter[]{
new InputFilter.LengthFilter(5), //最大能输入5个字符
new InputFilter.AllCaps(), //将所有输入的小写字母变成大写字母
new InputFilter() { //设置自己的filter
publicCharSequence filter(CharSequence source, intstart, int end, Spanned dst, int dstart, int dend) {
// source代表你输入的文字;start,end分别为开始位置和结束位置
//dest为现在显示的字符串;dstart,dend为光标所在字符串的位置;
if("1".equals(source.toString())){ //如果输入数字1,则该字符被汉字“一”代替,并显示
return "一";
}elseif("2".equals(source.toString())){
return"二";
}else{
return null;
}
}
}
});
第18讲- UI常用组件之EditText的更多相关文章
- 第17讲- UI常用组件之ImageView图片浏览
第17讲 UI常用组件之ImageView图片浏览 二.图片浏览ImageView ImageView就是一个用来显示图片的视图: ImageView常见属性 常见属性 对应方法 说明 android ...
- 第28讲 UI组件之 ListView和ArrayAdapter
第28讲 UI组件之 ListView和ArrayAdapter 1. Adapter 适配器 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带.在常见的 ...
- 第16讲- UI组件之TextView
第16讲 UI组件之TextView Android系统所有UI类都是建立在View和ViewGroup这两类的基础上的. 所有View的子类称为widget:所有ViewGroup的子类称为Layo ...
- 第32讲 UI组件之 时间日期控件DatePicker和TimePicker
第32讲 UI组件之 时间日期控件DatePicker和TimePicker 在Android中,时间日期控件相对来说还是比较丰富的.其中, DatePicker用来实现日期输入设置, Time ...
- 第31讲 UI组件之 Gallery画廊控件
第31讲 UI组件之 Gallery画廊控件 1.Gallery的简介 Gallery(画廊)是一个锁定中心条目并且拥有水平滚动列表的视图,一般用来浏览图片,并且可以响应事件显示信息.Gallery只 ...
- 第30讲 UI组件之 GridView组件
第30讲 UI组件之 GridView组件 1.网格布局组件GridView GridView是一个ViewGroup(布局控件),可使用表格的方式显示组件,可滚动的控件.一般用于显示多张图片,比如实 ...
- 第34讲 UI组件之 ProgressDialog和Message
第34讲UI组件之 ProgressDialog和Message 1.进度对话框 ProgressDialog <1>简介 ProgressDialog是AlertDialog类的一个扩展 ...
- 第33讲 UI组件_进度条ProcessBar和消息队列处理器handler
第33讲UI组件_进度条ProcessBar和消息队列处理器handler 1. 进度条ProcessBar 一个可视化的进度指示器,代表正在执行的耗时任务.可以为用户展示一个进度条,表示正在执行的任 ...
- 第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter
第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter 1.BaseAdapter BaseAdapter是Android应用程序中经常用到的基础数据适配器,它的 ...
随机推荐
- jquery中ajax的用法
Jquery中队Ajax操作进行了封装,可分为3层:1.最底层$.ajax(),2.第二层load().$.get().$.post()方法,3.第三层$.getScript()和$.getJSON( ...
- javascript 中的location.reload
location.reload()是什么意思 location.reload() 括号内有一个参数 true/false , 为空和false的效果一样. 如果该方法没有规定参数,或者参数是 fals ...
- Struts2属性驱动与模型驱动
为什么要使用属性驱动和模型驱动 struts2与struts很大的不同点在于,struts的execute方法提供了HttpServletRequest和HttpServletResponse方法在获 ...
- 查询rman备份信息经常使用指令
查询rman备份信息经常使用指令 ----登陆到rman $rman target / ----以精简的格式查看备份信息 RMAN> list backup of database summar ...
- android repo库的创建及代码管理
- Java基础知识强化43:StringBuffer类之StringBuffer和String的相互转化
1. String和StringBuffer的相互转换 思想是:A-----B的转换,我们把A转换为B,其实是为了使用B的功能:B-----A的转换,我们可能的结果是A类型,所以还要转换回来 2. 案 ...
- jQuery简介以及jQuery选择器
一 简介 1 定义:jQuery库是JavaScript的封装库 2 优点: 1) : 代码开源 2) : 选择器强大 3) : 完善的Ajax 4) : 浏览器兼容性高 5) : 文档完善(帮助文档 ...
- 关于链接target的问题
<a href="http://www.baidu.com" target="_blank">点击链接</a> target: _bla ...
- 工厂方法模式(java 设计模式)
1.工厂方法模式的定义 工厂方法模式使用的频率非常高, 在我们日常的开发中总能见到它的身影. 其定义为:Define an interface for creating an object,but l ...
- 《第一行代码》学习笔记39-服务Service(6)
1.Android中定时任务一般有两种实现方式:(1)使用Java API里提供的Timer类:(2)使用Android的Alarm机制. 但是,Timer类有个明显的短板,不太适用于那些需要长期在后 ...