EditText
常用属性
EditText继承关系:View-->TextView-EditText
android:inputType="textPassword"设置输入类型,帮助输入法显示合适的键盘类型
android:maxLength="5" 最大的宽度有多少个字符,宽必须是wrap_content
android:ems="5"多少个字符的宽度
android:hint="@string/et_hint"输入框提示
android:capitalize = "characters"//以大写字母写
android:numeric="integer"//设置只能输入整数,如果是小数则是:decimal
android:singleLine="true"//设置单行输入,一旦设置为true,则文字不会自动换行
android:textColorHighlight="#cccccc"//被选中文字的底色,默认为蓝色
android:autoText //自动拼写帮助
android:shadowDx设置阴影横向坐标开始位置
设置输入的光标位置
et.setSelection(index); 设置输入位置.起始光标和结束光标位置一样
监听键盘的Enter键
et.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if(v.getId() == R.id.et1){
Log.e("m_tag","输入框输入完毕");
}
Log.e("m_tag",event.getKeyCode()+"===="+v.getText());
//处理Enter按下之后的逻辑
return false;
}
});
内容的处理
Editable str = et.getText();
//末尾添加内容
str.append("2");
//插入内容
str.insert(where, text)
//删除内容
str.delete(start, end);
//转化趁String对象
str.toString();
监听文本变化TextChangedListener
// 监听输入的内容变化情况
et.addTextChangedListener(new TextWatcher() {
//改变中
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
Log.e("m_tag", "onTextChanged:" + s);
}
//改变前
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
Log.e("m_tag", "beforeTextChanged:" + s);
}
//改变后
@Override
public void afterTextChanged(Editable s) {
Log.e("m_tag", "afterTextChanged:" + s);
if (s.length() > 6) {
s.delete(6, s.length());
}
}
});