在对Android的EditText控件进行设置时,经常会限定一下输入法的属性,设置右下角为完成或者搜索等,我们使用android:imeOptions
属性。该属性有以下这些选项:
1.actionUnspecified 未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED.
2.actionNone 没有动作,对应常量EditorInfo.IME_ACTION_NONE
3.actionGo 去往,对应常量EditorInfo.IME_ACTION_GO
4.actionSearch 搜索,对应常量EditorInfo.IME_ACTION_SEARCH
5.actionSend 发送,对应常量EditorInfo.IME_ACTION_SEND
6.actionNext 下一个,对应常量EditorInfo.IME_ACTION_NEXT
7.actionDone 完成,对应常量EditorInfo.IME_ACTION_DONE
使用起来很简单,给你的EditText控件设置其中一个属性就行了。比如:
我想要让软件盘右下角变成搜索的字样或者是图标:
<EditText
android:layout_width="match_parent"
android:layout_height="50dp"
android:singleLine="true"
android:imeOptions="actionSearch "/>
//在代码中去设置它的OnEditorActionListener监听方法。
//用来判断事件类型是不是EditorInfo.IME_ACTION_SEARCH,然后写下对应的逻辑既可。
这样既可。
在一开始使用的时候遇到一个问题,就是明明设置了其选项居然没有用。百度之后发现原来要给他在设置一下singleLine属性才行。单独使用无效。切记。
顺便在说一下android的输入类型:
根据要输入的内容展现相应的软件盘,可通过修改android:inputType 来实现。
这是一些常用的输入类型。
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"//URI格式
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"//时间键盘
网友评论