TextView
1、TextView同时显示图片和文字
图片距离文字的距离 :android:drawablePadding;
在文本框左边绘制指定图像 :android:drawableLeft;
在文本框右边绘制指定图像 :android:drawableRight;
在文本框上边绘制指定图像 :android:drawableTop;
在文本框下边绘制指定图像 : android:drawableBottom;
2、单行文本
android:singleLine
3、显示文本超过了TextView长度后处理文本内容
android.ellipsize;
属性值:
none:不做任何处理;
start:文本开始处截断, 显示省略号;
middle:文本中间截断, 显示省略号;
end:文本结尾处截断, 显示省略号;
marquee:使用marquee滚动动画显示文本;
4、TextView默认行间距比较窄,不美观。我们可以设置每行的行间距:
//设置行间距,如”8dp”
android:lineSpacingExtra
//设置行间距的倍数,如”1.5″
android:lineSpacingMultiplier
5、跑马灯效果
android:singleLine="true" 单行显示
android:ellipsize="marquee" 省略形式为跑马灯
android:focusable="true" 可以获得焦点
android:marqueeRepeatLimit="marquee_forever" 无限重复
android:focusableInTouchMode="true" 触摸模式下可以获得焦点
EditText
1、输入框输入类型
android:inputType="textPassword" 文字密码(数字、字符等)
android:inputType="numberPassword" 数字密码(只能输入数字)
android:inputType="phone" 电话号码类型,只能输入数字、-、#、*几种字符
android:inputType = "number" 属性设置数字
android:inputType = "phone" 属性设置电话
android:inputType = "data" 属性设置日期
android:inputType = "numberPassword" 属性设置该输入框输入密码
2、限定edittext只能输入数字和字母,并且默认输入为数字,如身份证号码
android:inputType="number"
android:digits="0123456789xX"
3、Enter键图标的设置:
通过设置android:imeOptions来改变默认的“完成”文本。这里举几个常用的常量值:
actionUnspecified未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED;
actionNone没有动作,对应常量EditorInfo.IME_ACTION_NONE;
actionGo去往,对应常量EditorInfo.IME_ACTION_GO;
actionSearch搜索,对应常量EditorInfo.IME_ACTION_SEARCH;
actionSend发送,对应常量EditorInfo.IME_ACTION_SEND;
actionNext下一个,对应常量EditorInfo.IME_ACTION_NEXT;
actionDone完成,对应常量EditorInfo.IME_ACTION_DONE。
4、光标位置
String string = "hjfdskhj";
if (string != null) {
//设置光标位置
mEdt.setSelection(string.length());
}
5、文本变化监听
mEt.addTextChangedListener(new TextWatcher() {
// 文本改变时的回调
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged(Editable s) {
String string = s.toString().trim();
//string就是文本框的内容
}
});
TextUtil用法
TextUtils.isEmpty(confirm)
TextUtils.equals(pwd, confirm)
//将数组转换成链接后的字符串:[1,2,3,4] -> "1+2+3+4"
TextUtils.join("+", array);
//切割字符串成数组: "1+2+3+4" -> [1,2,3,4]
TextUtils.split("1+2+3+4", "+");
待续。。。