在设计登陆界面时,发现键盘把密码输入框挡住,于是搜索“Enter”按键设置为“下一项”的方法。网上所有的解决方案(xml布局文件设置方法)均指向设置EdiText的属性imeOptions为“actionNext”即:android:imeOptions="actionNext"。
但是经测试,在我的环境下此设置无效。经多次尝试发现,将文本框的属性设置为单行模式,即:android:singleLine="true"可解决此问题。
效果如下:
代码:
另:
顺便附上网上普通的设置方法以及EdiText属性大全:
android 软键盘Enter键图标的设置
软键盘的Enter键默认显示的是“完成”文本,我们知道按Enter建表示前置工作已经准备完毕了,要去什么什么啦。比如,在一个搜索中,我们输入要搜索的文本,然后按Enter表示要去搜索了,但是默认的Enter键显示的是“完成”文本,看着不太合适,不符合搜索的语义,如果能显示“搜索”两个字或者显示一个表示搜索的图标多好。事实证明我们的想法是合理的,Android也为我们提供的这样的功能。通过设置android:imeOptions来改变默认的“完成”文本。这里举几个常用的常量值:
- actionUnspecified 未指定,对应常量EditorInfo.IME_ACTION_UNSPECIFIED.效果:
- actionNone 没有动作,对应常量EditorInfo.IME_ACTION_NONE 效果:
- actionGo 去往,对应常量EditorInfo.IME_ACTION_GO 效果:
- actionSearch 搜索,对应常量EditorInfo.IME_ACTION_SEARCH 效果:
- actionSend 发送,对应常量EditorInfo.IME_ACTION_SEND 效果:
- actionNext 下一个,对应常量EditorInfo.IME_ACTION_NEXT 效果:
- actionDone 完成,对应常量EditorInfo.IME_ACTION_DONE 效果:
属性名称 |
描述 |
android:autoLink |
设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。 可选值(none/web/email/phone/map/all)。 这里只有在同时设置text时才自动识别链接,后来输入的无法自动识别。 |
android:autoText |
自动拼写帮助。这里单独设置是没有效果的,可能需要其他输入法辅助才行, 效果参见视频 。 |
android:bufferType |
指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符, 也就是说getText后可调用append方法设置文本内容。 spannable 则可在给定的字符区域使用样式,参见这里1 、这里2 。 |
android:capitalize |
设置英文字母大写类型。设置如下值: |