Android 控件四 EditText 控件
前言
本文简记 Android 控件 TextView 的常用属性及使用方法。
常用属性
基础属性
-
请参阅:Android 布局与相关属性 的基础属性部分。
包括:id 属性,宽度、高度属性,背景属性,内、外边距属性等。
文本相关
- 文本内容属性:
android:text=""
- 文本颜色属性:
android:textColor=""
- 文本字体大小属性:
android:textSize=""
,一般单位sp
。
文本最大行数属性
-
文本最大行数属性:
android:maxLines=""
.值:
- 为数值,无单位,1 即表示 1行。
初始提示信息
需要在没有输入内容时提示要输入的内容,比如登录界面输入用户名的文本框提示显示 Account
。
-
android:hint=""
值:
- 字符串,在没有输入信息时显示,有输入信息时只显示输入信息。
-
示例:
EditText 控件:
<EditText ...... android:hint="Account/Phone" ...... />
效果:
文本输入及显示格式
要实现调用键盘输入时,使用不同的键盘布局,就是用这个属性。
-
android:inputType=""
-
常用值:
none
:不规定(默认明文),可输入数字、中文、英文、特殊字符等,使用默认的输入键盘布局。textPassword
:规定密文,可输入数字、中文、英文、特殊字符等,使用默认的输入键盘布局。numberPassword
:规定密文,仅可输入数字,使用数字的输入键盘布局。number
:不规定(默认明文),仅可输入数字,使用数字的输入键盘布局。- 等等。
-
示例:
EditText 控件:
<EditText ...... android:drawableLeft="@drawable/account" android:drawablePadding="10dp" android:hint="Account/Phone" android:inputType="none" ...... /> <!-- android:inputType 设置文本显示格式,nano 可输入任意字符--> <!-- Password 密码 EditText--> <EditText ...... android:drawableLeft="@drawable/password" android:drawablePadding="10dp" android:hint="Password" android:inputType="textPassword" ...... /> <!-- android:inputType 设置文本显示格式,textPassword 将输入字符密文显示--> <!-- 验证码控件集 利用权重--> <LinearLayout ......> <!-- Verfi 验证码 EditText--> <EditText ...... android:hint="Verfi" android:inputType="number" ...... /> <!-- android:inputType 设置文本显示格式,number 仅可输入数字--> <!-- Get Verfi 获得验证码 Button--> <Button ...... /> </LinearLayout>
效果:
输入+图片相关
这里的图片一般是 20~50dp * 20~50dp
的 PNG 等格式的图片。
-
图片位置属性:
android:drawableXXXXX=“”
。-
XXXXX
为多项可选:Left、Right、Top、Bottom、Start、End等
-
示例:
android:drawableLeft=“”
-
双引号值为图片文件地址。
-
-
图片边距属性:
android:drawablePadding=""
,单位 dp 。
权重属性
- 请参阅: Android 布局与相关属性 的权重属性部分。
常用 Java 方法
监听内容变化
-
可使用方法监听内容变化:
EditText.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { // 内容变化前 } @Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { // 内容变化时 } @Override public void afterTextChanged(Editable editable) { // 内容变化后 } });
获得输入内容
- 点击设置的 Button 控件,使用
getText()
方法即可获得内容。
实例
- 请参阅: Android 基础控件演示实例 的 “演示代码下载” 部分。