您的位置:首页 > 移动开发 > Android开发

整理 Android EditText 的相关属性的使用

2016-07-25 13:56 453 查看

1. EditText 输入的文字为密码的形式

android:password = "true"


editText.setTransformationMethod(PasswordTransformMethod.getInstance());


2. EditText 输入的文字为电话号码

android:phoneNumber = “true”

3. EditText 字数限制的设置

android:maxLength = “11”

editText.setFilters(new inputFilter[]{newInputFilter.LengthFilter(11)})

4. EditText 设置字体

android:typeface = “monospace”

5. EditText 是否可以编辑

android:editable = “false”

6. 在 EditText 中键盘的调起、关闭

(1)EditText 有焦点,focusable 为 true,阻止输入法弹出

editText = (EditText) findViewById(R.id.txtBody);
editText.setOnTouchListener(new OnTouchListener(){
public boolean onTouch(View v, MotionEvent event){
editText.setInputType(InputType.TYPE_NULL);// 关闭软键盘
return false;
}
});


(2)当 EditText 无焦点(focusable = false)时阻止输入法弹出

InputMethodManager imm = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editText.getWindowToken(),0);


(3) 调用数字键盘并设置输入类型和键盘为英文

etNumber.setInputType(InputType.TYPE_CLASS_NUMBER); // 调用数字键盘
editText.setInputType(InputType.TYPE_TEXT_FLAG_NULTI_LINE);
// 设置输入类型和键盘为英文或者 android:inputType = "textUri | textMultiLine"


(4)android:focusable = “false” // 键盘永远不会弹出

7. android:layout_gravity 和 android:gravity 的区别

(1)android:layout_gravity 是本元素对父元素的重力方向

(2)android:gravity 是本元素所有子元素的重力方向

8. android:numeric // 只接受数字

一共有三种形式:integer(正整数)、signed(带符号整数)、decimal(浮点数)

9. 使用android:imeOptions 可对 Android 自带的软键盘进行一些界面上的设置:

// 使软键盘不全屏显示,只占用一部分屏幕,同时这个属性还会降控制软键盘右下角按键的显示内容,

默认情况下为回车键

android:imeOptions = “flagNoExtractUi”

// 输入框右侧不带任何提示

android:imeOptions=“actionNone”

// 右下角按键内容为’开始’

android:imeOptions=”actionGo”

// 右下角按键为放大镜图片,搜索

android:imeOptions=”actionSearch”

// 右下角按键内容为‘发送’

android:imeOptions=”actionSend”

// 右下角按键内容为‘下一步’

android:imeOptions=”actionNext”

// 右下角按键内容为’完成’

android:imeOptions=”actionDone”

10. 限定 editText 能输入数字和字母,并且默认输入数字,比如身份证号码

android:inputType = “number”

android:digits = “0123456789xyzXYZ”

11. 软件盘的调起导致原来的界面被挤上去,或者导致界面下面的tab导航被挤上去,解决方案如下:

使用 manifest 中 Activity 的 android:windowSoftInputMode 的”adjustPan”属性

另外注意:有关软键盘的问题可以参考 android:windowSoftInputMode 的属性

12. editText 光标详解

// 让光标放入到点击位置

editText.requestFocusFromTouch();

// 默认方式获得焦点

editText.requestFocus();

// 光标处插入

EditText editor = (EditText) getCurrentView();

int cursor = editor.getSelectionStart();

editor.getText().insert(cursor, delta);

// 让光标移动末端(这样文字就会向前显示)

EditText et =

String text = “text”;

et.setText(text);

et.setSelection(text.length());

android:cursorVisible = “false” // 隐藏光标

android:background = “#00000000” // 不要文本框背景

13. 部分属性

android:singleLine = “true”

android:password = “true”

android:textColor = “#ff8c00”

android:textStyle = “bold/italic”

android:capitalize = “characters” // 以大写字母写

android:textColorHint=”#ffff00” 设置提示信息文字的颜色,默认为灰色

android:textColorHightlight = “#cccccc” 被选中文字的底色,默认为蓝色

android:textScaleX = “1.5” 控制字与字之间的间距

android:ellipsize= “end” 自动隐藏尾部溢出数据,一般用于文字内容过长一行无法全部显示的时候
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android editetxt