EditText有个属性setSelection(int start,int end);可以将文本框的文字选中。。
EditText的监听与其他不太一样,分别对应三个方法。
et.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) {
//改变后
}
});
设置提示信息,et.setHint("这是提示信息");
可以通过键盘事件setOnKeyListener来讲编辑框内的文字进行处理,显示在TextView上,
et.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// Toast.makeText(getApplicationContext(), "该按键的keyCode为:"+keyCode,
// Toast.LENGTH_LONG).show();
if(et.getText().toString().length()>=11){
if(event.getAction()==KeyEvent.ACTION_UP){
String arg1 = et.getText().toString().substring(0, 4);
String arg2 = et.getText().toString().substring(4, 8);
String arg3 = et.getText().toString().substring(8, 11);
tv.setText(arg1+"-"+arg2+"-"+arg3);
}
}
return false;
}
});
下面介绍下inputStyle的对应格式:
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" 时间键盘