很常用的控件EditText(输入框); 和TextView非常类似,最大的区别是:EditText可以接受用户输入。和前面一样,我们不一个个讲属性, 只讲实际应用。那么开始本节内容!
如下图,相信你对于这种用户登录的界面并不陌生,是吧,我们很多时候都用的这种界面
相比另外这种,下面这种又如何?
还不赖是吧,当然,不会在这里贴布局,这里只介绍默认提示文本的两个控制属性:
默认提示文本的两个属性如下:
android:hint="默认提示文本"
android:textColorHint="#95A1AA"
前者设置提示的文本内容,后者设置提示文本的颜色!
当我们想在点击输入框获得焦点后,不是将光标移动到文本的开始或者结尾;而是 获取到输入框中所有的文本内容的话!这个时候我们可以使用selectAllOnFocus属性
android:selectAllOnFocus="true"
比如下面的效果图: 第一个是设置了该属性的,第二个是没设置该属性的,设置为true的EditText获得焦点后 选中的是所有文本!
效果图:
有时我们可能需要对输入的数据进行限制,比如输入电话号码的时候,你输入了一串字母,这 显然是不符合我们预期的,而限制输入类型可以通过inputType属性来实现!
比如限制只能为电话号码,密码(textPassword):
<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默认是多行显示的,并且能够自动换行,即当一行显示不完的时候,他会自动换到第二行
如图所示:
我们可以对其进行限制,比如 设置最小行的行数:android:minLines="3" 或者设置EditText最大的行数:android:maxLines="3" PS:当输入内容超过maxline,文字会自动向上滚动!!
另外很多时候我们可能要限制EditText只允许单行输入,而且不会滚动,比如上面的登陆界面的 例子,我们只需要设置
android:singleLine="true"
即可实现单行输入不换行
我们可以通过下述两个属性来设置字的间距:
android:textScaleX="1.5" //设置字与字的水平间隔
android:textScaleY="1.5" //设置字与字的垂直间隔
另外EditText还为我们提供了设置英文字母大写类型的属性:android:capitalize 默认none,提供了三个可选值:
sentences:仅第一个字母大写 words:每一个单词首字母大小,用空格区分单词 characters:每一个英文字母都大写
我们使用margin相关属性增加组件相对其他控件的距离,比如android:marginTop = "5dp"
使用padding增加组件内文字和组件边框的距离,比如android:paddingTop = "5dp"
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有