使用软键进行编辑时,我尝试使用具有以下特征的EditText
。我准备了文档,在这里搜索,玩参数但找不到工作配置。
EditView
视图的高度为几行(例如3-4)。我可以实现{1,2,3}和{1,2,4}但不能实现{1,2,3,4}。我的理由是,由于内容是单行(没有换行符),因此不使用Enter键,因此应该可以更改为Done标签。
我的设置代码如下所示
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_SENTENCES | InputType.TYPE_TEXT_FLAG_IME_MULTI_LINE);
editText.setHorizontallyScrolling(false);
editText.setSingleLine(false);
// This does not work. Soft keyboard has Enter action.
editText.setImeOptions(EditorInfo.IME_ACTION_DONE);
有可能吗?有什么建议吗?
答案 0 :(得分:35)
这种组合(以及EditText
方法调用的特定顺序)应该产生你想要的配置:
editText.setInputType(
InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
editText.setSingleLine(true);
editText.setLines(4); // desired number of lines
editText.setHorizontallyScrolling(false);
editText.setImeOptions(EditorInfo.IME_ACTION_DONE);
答案 1 :(得分:7)
添加
editText.setHorizontallyScrolling(false);
editText.setMaxLines(Integer.MAX_VALUE);
以编程方式在您的活动中使用您的edittext实例。
它配置EditText实例,以便用户编辑单行字符串,该字符串使用IME选项在多行上进行软包装显示。