EditText的常用点,输入控制(包含inputType)
部分内容参考:http://www.cnblogs.com/hnrainll/archive/2012/11/24/2786159.html
控制EditText的输入的时候:
1)常用设置
android:hint="请输入数字!"//设置显示默认的提示信息
android:focusable="false"// 无法输入内容
android:singleLine="true"//设置单行输入,一旦设置为true,则文字不会自动换行。
android:textColor = "#ff8c00"//字体颜色
android:textStyle="normal"//正常字体
="bold" //粗体
="italic"//斜体
="bold|italic"//粗体+斜体
android:capitalize = "characters"//输入内容为大写字母(注意:可以用inputType的某个属性代替)
android:textColorHighlight="#cccccc"//被选中文字的底色,默认为蓝色
android:textColorHint="#ffff00"//设置提示信息文字的颜色,默认为灰色
android:textScaleX="1.5"//控制字与字之间的间距
android:background="@null"//背景,这里没有,指透明
android:layout_gravity="center_vertical"//设置控件显示的位置:默认top,这里居中显示,还有bottom
android:gray="top" //多行中指针在第一行第一位置
android:capitalize //首字母大写
android:phoneNumber //输入电话号码
android:autoLink=”all” //设置文本超链接样式当点击网址时,跳向该网址
android:cursorVisible //设定光标为显示/隐藏,默认显示。
2)inputType常用设置
android:inputType="textCapCharacters" 字母大写
android:inputType="textCapWords" 首字母大写
android:inputType="textCapSentences" 仅第一个字母大写
android:inputType="textMultiLine" 多行输入
android:inputType="textPassword" 密码
android:inputType="number" 数字
android:inputType="numberSigned" 带符号数字格式
android:inputType="numberDecimal" 带小数点的浮点格式
android:inputType="datetime" 时间日期
android:inputType="date" 日期键盘
android:inputType="time" 时间键盘
3)常用的数字输入设置:
android:numeric="integer" //只可以输入正整数
android:numeric="decimal" //可以输入小数
android:numeric="signed" //表示可以输入整数(正整数或者负整数) android:inputType="numberDecimal" //可以输入小数,正小数(即只可以加一个小数点的正数)
android:maxLength="11" //最多可以输入11位数字
android:singleLine="true" //单行输入
android:password="true" //密码输入框,可以使得输入的内容在1秒内变成*字样 android:inputType="number" //设置只能输入数字(相当于是输入正整数),并且默认的弹出框是数字弹出框
4)EditText中,android:maxLines和android:minLines的区别:
例如:
android:maxLines="3" //使用maxLines的EditText最大行数为3行,当输入的内容超过3行后,它形状的大小不会根据输入内容的多少而改变,反正它显示的内容就是3行
//开始EditText里面没内容时,默认控件大小为1行
android:minLines="3" //使用minLines的EditText是至它至少显示3行内容(包括内容为空时)当输入的内容超过3行后,它形状的大小根据输入内容的多少而改变。
5)如何设置输入框只能输入指定的字符:
A:在EditText的XML中直接设置:
android:digits="0123456789xyzXYZ#*?" //引号里面输入你想设置的输入内容
B:使用Java代码设置:
EditText.setKeyListener(new NumberKeyListener() {
@Override
protected char[] getAcceptedChars() {
return new char[] { 'a', 'b', '3', '4', '5', '6', '7', '8','9', };
}
@Override
public int getInputType() {
// TODO Auto-generated method stub
return android.text.InputType.TYPE_CLASS_PHONE;
}
});
android 中inputType详解:
android 1.5以后添加了软件虚拟键盘的功能,所以在输入提示中将会有对应的软键盘模式。
android中inputType属性在EditText输入值时启动的虚拟键盘的风格有着重要的作用。这也大大的方便的操作。有时需要虚拟键盘只为字符或只为数字。所以inputType尤为重要。
<EditText android:layout_width="fill_parent" android:layout_height="wrap_content"android:inputType="phone" />
//文本类型,多为大写、小写和数字符号。
android:inputType="none"
android:inputType="text"
android:inputType="textCapCharacters" 字母大写
android:inputType="textCapWords" 首字母大写
android:inputType="textCapSentences" 仅第一个字母大写
android:inputType="textAutoCorrect" 自动完成
android:inputType="textAutoComplete" 自动完成
android:inputType="textMultiLine" 多行输入
android:inputType="textImeMultiLine" 输入法多行(如果支持)
android:inputType="textNoSuggestions" 不提示
android:inputType="textUri" 网址
android:inputType="textEmailAddress" 电子邮件地址
android:inputType="textEmailSubject" 邮件主题
android:inputType="textShortMessage" 短讯
android:inputType="textLongMessage" 长信息
android:inputType="textPersonName" 人名
android:inputType="textPostalAddress" 地址
android:inputType="textPassword" 密码
android:inputType="textVisiblePassword" 可见密码
android:inputType="textWebEditText" 作为网页表单的文本
android:inputType="textFilter" 文本筛选过滤
android:inputType="textPhonetic" 拼音输入 //数值类型
android:inputType="number" 数字
android:inputType="numberSigned" 带符号数字格式
android:inputType="numberDecimal" 带小数点的浮点格式
android:inputType="phone" 拨号键盘
android:inputType="datetime" 时间日期
android:inputType="date" 日期键盘
android:inputType="time" 时间键盘
遇到的一些情景:
一、项目需求是这样的,如果EditText上面已经被setText()内容,则需要禁止输入,防止它被修改。
解决:
1、根据判断条件,设置:
editText.setFocusable(true);或者editText.setFocusable(false);
2、手机软键盘是否可以开启:
利用 editText.setInputType(InputType.TYPE_NULL);来禁止手机软键盘。
editText.setInputType(InputType.TYPE_CLASS_TEXT);来开启软键盘。
二、输入框中,第一位不让输入”.“,如何判断?
if(StringUtils.equals(".", StringUtils.substring(edt.getText().toString(),0,1))){ //截取用户输入的内容的第一位,然后跟”.做比较“
Toast.makeText(VisitInfo.this, "里程信息输入有误,请重新输入!",Toast.LENGTH_SHORT).show();
}
EditText的常用点,输入控制(包含inputType)的更多相关文章
- edittext 手机号、邮箱输入限制
package com.example.yanlei.myapplication; import android.support.v7.app.AppCompatActivity;import a ...
- 单词数 HDU 2072 字符串输入控制
单词数 HDU 2072 字符串输入控制 题意 lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数.下面你的任务是帮助xiaoou333解决这个 ...
- ROS_Kinetic_25 在ubuntu16.04使用Leap_motion并作为手势输入控制Gazebo中的机器人
ROS_Kinetic_25 在ubuntu16.04使用Leap_motion并作为手势输入控制Gazebo中的机器人 先附上资料网址: 1. https://developer.leapmoti ...
- cin循环输入控制问题
之前写一个简单的输入节点值自动生成链表的测试程序,发现cin的输入控制好像在VC++6.0和VS2010中不一样,特此记录. 现在有以下代码: vector<int> ivec; int ...
- android EditText控件可输入正负数及小数位
设置android:inputType="numberSigned|numberDecimal" <EditText android:id="@+id/editTe ...
- Android EditText的常用技巧
1. 设定 EditText 的滚动条.对齐方式.行数.和提示 (hint) 及其颜色 在布局文件,比如 main.xml 中,增加 < EditText android:id = ...
- EditText(4)常用属性详解
常用的属性: 显示密码 通过设置EditText的setTransformationMethod()方法来实现隐藏密码或这显示密码. editText.setTransformationMethod( ...
- Java I/O(二)其他常用的输入输出流PrintStream等、标准流重定向
四.FilterOutputStream.PrintStream PrintStream是继承自FilterStream类的,例如标准输出流System.out就是著名的PrintStream类对象. ...
- Java输入输出流(一)——常用的输入输出流
1.流的概念:在Java中,流是从源到目的地的字节的有序序列.Java中有两种基本的流--输入流(InputStream)和输出流(OutputStream). 根据流相对于程序的另一个端点的不同,分 ...
随机推荐
- 2016年Esri技术公开课全年资料分享
大家好,2016年的公开课活动在上周全部结束,感谢大家的支持. 2016年的公开课共进行20期,共有24位讲师参与,公开课视频播放.课件下载次数累计超10万次,在这里衷心的感谢大家的积极参与和分享精神 ...
- linux设备驱动学习笔记--内核调试方法之printk
1,printk类似于用户态的printf函数,但是比printf函数多了一个日志级别,内核中最常见的日志输出都是通过调用printk来实现的,其打印级别有8种可能的记录字串, 在头文件 <Li ...
- Caused by: java.lang.ClassNotFoundException: com.mchange.v2.cfg.MConfig
出错原因:c3p0 为0.9.5.2版本 而使用了 mchange-commons-java 的版本为0.2.3.4,mchange-commons-java 的版本太高了, 将mchange-com ...
- /proc/interrupts /proc/stat 查看中断信息
/proc/interrupts列出当前所以系统注册的中断,记录中断号,中断发生次数,中断设备名称 如下图:从左至右:中断号 中断次数 中断设备名称 从上图可知中断号为19的arch_timer ...
- iphone-命令行编译之--xcodebuild
参考 : https://www.cnblogs.com/xiaodao/archive/2012/03/01/2375609.html
- 使用 Gradle 快速创建 Java 项目
上一篇介绍了如何安装 Gradle,现在就可以直接通过已经安装好的 Gradle 创建一个普通 Java 项目 Gradle 默认内建了一个 init 插件,可以生成 Java 项目基础结构 $ gr ...
- Python中的装饰器,迭代器,生成器
1. 装饰器 装饰器他人的器具,本身可以是任意可调用对象,被装饰者也可以是任意可调用对象. 强调装饰器的原则:1 不修改被装饰对象的源代码 2 不修改被装饰对象的调用方式 装饰器的目标:在遵循1和2的 ...
- 比较CGI,FastCGI,PHP-CGI与PHP-FPM的区别
最早的Web服务器,可以简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器,也就是静态html. 随着时间的变化,网站也越来越复杂,所以出现动态技术.但是服务器并不能直接 ...
- spring注解开发:bean的作用域与懒加载
1.bean的作用域 1.新建一个maven工程,添加如下依赖 <dependency> <groupId>org.springframework</groupId> ...
- java--二叉树解析及基本实现
一.二叉树的结构 在进行链表结构开发的过程之中,会发现所有的数据按照首尾相连的状态进行保存,那么 在进行数据查询时为了判断数据是否存在,这种情况下它所面对的时间复杂度就是"O(n)" ...