注:整理来源包括网络以及自己开发,可能不完全正确或者最合理,仅供参考。
**一、**inputType属性
inputType属性在EditText输入值时启动的虚拟键盘的风格有着重要的作用。比如有时需要虚拟键盘只为字符或只为数字。
1<EditText 2 //电话号码 3 android:inputType="phone" 4 //文本类型,多为大写、小写和数字符号。 5 android:inputType="none" 6 android:inputType="text" 7 android:inputType="textCapCharacters" //字母大写 8 android:inputType="textCapWords" //首字母大写 9 android:inputType="textCapSentences" //仅第一个字母大写 10 android:inputType="textAutoCorrect" //自动完成 11 android:inputType="textAutoComplete" //自动完成 12 android:inputType="textMultiLine" //多行输入 13 android:inputType="textImeMultiLine" //输入法多行(如果支持) 14 android:inputType="textNoSuggestions" //不提示 15 android:inputType="textUri" //网址 16 android:inputType="textEmailAddress" //电子邮件地址 17 android:inputType="textEmailSubject" //邮件主题 18 android:inputType="textShortMessage" //短讯 19 android:inputType="textLongMessage" //长信息 20 android:inputType="textPersonName" //人名 21 android:inputType="textPostalAddress" //地址 22 android:inputType="textPassword" //密码 23 android:inputType="textVisiblePassword" //可见密码 24 android:inputType="textWebEditText" //作为网页表单的文本 25 android:inputType="textFilter" //文本筛选过滤 26 android:inputType="textPhonetic" //拼音输入 27 //数值类型 28 android:inputType="number" //数字 29 android:inputType="numberSigned" //带符号数字格式 30 android:inputType="numberDecimal" //带小数点的浮点格式 31 android:inputType="datetime" //时间日期 32 android:inputType="date" //日期键盘 33 android:inputType="time" //时间键盘 34 />
二、imeOptions属性
当我们手机横屏,且使用Android自带的软键盘为EditText进行文本输入时,若不进行特殊的设置,该软键盘会占用整个界面,那么,如何让键盘只占用屏幕的一部分呢? 其实只需要改一个小小的属性即可!
1<EditText 2 android:id="@+id/text1" 3 android:imeOptions="flagNoExtractUi"/>
另外使用android:imeOptinos可对Android自带的软键盘进行一些界面上的设置:
1android:imeOptions="flagNoExtractUi" //使软键盘不全屏显示,只占用一部分屏幕 2同时,这个属性还能控件软键盘右下角按键的显示内容,默认情况下为回车键 3android:imeOptions="actionNone" //输入框右侧不带任何提示 4android:imeOptions="actionGo" //右下角按键内容为'开始' 5android:imeOptions="actionSearch" //右下角按键为放大镜图片,搜索 6android:imeOptions="actionSend" //右下角按键内容为'发送' 7android:imeOptions="actionNext" //右下角按键内容为'下一步' 8android:imeOptions="actionDone" //右下角按键内容为'完成'
同时,可能EditText添加相应的监听器,捕捉用户点击了软键盘右下角按钮的监听事件,以便进行处理。
1editText.setOnEditorActionListener(new OnEditorActionListener() { 2 @Override 3 public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 4 Toast.makeText(MainActivity.this, "text2", Toast.LENGTH_SHORT).show(); 5 return false; 6 } 7});