EditText支持多行同时支持imeOptions设置
来源:互联网 发布:有密软件 编辑:程序博客网 时间:2024/06/05 08:22
本文出自:http://blog.sina.com.cn/s/blog_97eedec40100wwjd.html
问题描述:EditText一旦设置了多行显示,键盘总是显示Enter键。有时候我们只需要文本输入多行显示,Enter键任然需要支持imeOptions设置,比如显示完成键而不是回车换行。如这如何做呢?
问题分析以及解决:我们知道,当EditText弹出输入法时,会调用方法(TextView$onCreateInputConnection)
public InputConnection onCreateInputConnection(EditorInfo outAttrs)来创建和输入法的连接,设置输入法的状态,包括显示什么样的键盘布局。需要注意的地方是这部分代码:
if (isMultilineInputType(outAttrs.inputType)) { // Multi-line text editors should always show an enter key. outAttrs.imeOptions |= EditorInfo.IME_FLAG_NO_ENTER_ACTION; }
private static boolean isMultilineInputType(int type) { return (type & (EditorInfo.TYPE_MASK_CLASS | EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE)) == (EditorInfo.TYPE_CLASS_TEXT | EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE); }
发现,当EditText的inputType包含textMultiLine标志位,会强迫imeOptions加上IME_FLAG_NO_ENTER_ACTION位,这导致了只显示Enter键。
解决方法:我们可以继承EditText类,覆写onCreateInputConnection方法,如下:
@Overridepublic InputConnection onCreateInputConnection(EditorInfo outAttrs) { InputConnection inputConnection = super.onCreateInputConnection(outAttrs); if(inputConnection != null){ outAttrs.imeOptions &= ~EditorInfo.IME_FLAG_NO_ENTER_ACTION; } return inputConnection; }
记。
0 0
- EditText支持多行同时支持imeOptions设置
- EditText支持多行同时支持imeOptions设置
- EditText支持多行同时支持imeOptions设置
- EditText支持多行同时支持imeOptions设置
- EditText支持多行同时支持imeOptions设置
- android EditText多行显示并且支持imeOptions设置
- 笔记——android EditText多行显示并且支持imeOptions
- EditText 多行显示同时支持软键盘监听
- EditText 设置 imeOptions 无效问题
- EditText 回车设置/imeOptions无效
- 支持 emoji 的 editText
- edittext 只支持数字键
- innoDB同时支持多个BufferPool实例
- Qt 乱码同时支持多个编码
- WINCE6 同时支持简繁体
- WINCE6 同时支持简繁体
- WINCE6 同时支持简繁体
- WINCE6 同时支持简繁体
- Java注解@Retention&@Inherited@Target@IntDef@Documented
- 81. Search in Rotated Sorted Array II LeetCode
- HttpURLConnection对象相关方法操作
- WPF中使用amCharts绘制股票K线图
- 理解android Matrix
- EditText支持多行同时支持imeOptions设置
- leetcode 6. ZigZag Conversion
- C语言-内存对齐
- AT&T格式汇编学习
- 面向对象设计6大原则之五(接口隔离原则)-系统有更高的灵活性
- Java中关于时区的哪些事
- android View 绘制原理
- 在线PDF编辑网站http://www.pdfescape.com
- NYOJ-47-过河问题