【问题标题】:How to show the line break button in Android keypad?如何在 Android 键盘中显示换行按钮?
【发布时间】:2020-02-05 01:38:49
【问题描述】:

我正在使用TextInputLayout 及其多行属性在我的应用程序中构建一个文本区域,以让用户编写超过 1 行,我正在以编程方式构建它(无 xml)

TextInputLayout textInputLayout = new TextInputLayout(context);
textInputLayout.setLayoutParams(new TextInputLayout.LayoutParams(TextInputLayout.LayoutParams.MATCH_PARENT, TextInputLayout.LayoutParams.WRAP_CONTENT));

TextInputEditText field = new TextInputEditText(context);
field.setText(text);
field.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE);
field.setLayoutParams(new TextInputLayout.LayoutParams(TextInputLayout.LayoutParams.MATCH_PARENT,(int) (100 * dp)));
textInputLayout.addView(field);
myLinearLayout.addView(textInputLayout); // add text to layout

上面的代码创建了我的文本区域,但没有显示line break 按钮,而是显示了submit 按钮。

这是当前结果:

这是预期的结果(来自另一个应用程序):

我必须添加哪个属性才能像第二张图片一样显示换行按钮?

【问题讨论】:

标签: java android android-keypad


【解决方案1】:

How to get the keyboard to show a return key?

尝试将 IMEOptions 设置为无。

field.setImeOptions(EditorInfo.IME_ACTION_NONE);

还要检查 EditText 是否变成了 SingleLine,这也会导致完成按钮出现。

【讨论】:

  • 我试过了,“return”按钮出现了,但是当我按下它时,是插入空格而不是换行符,不知道是不是像你说的(EditText变成了SingleLine?)
  • 好的,我想通了,我得加InputType.TYPE_CLASS_TEXT,我去编辑问题,谢谢!
  • 太棒了。连我都不知道。很高兴知道。 :) 这可以在其他情况下工作。 field.setLines(10);会给用户10行。但是您的解决方案看起来很整洁。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-22
  • 1970-01-01
  • 2013-08-25
  • 1970-01-01
  • 2016-10-16
  • 2012-06-23
  • 1970-01-01
相关资源
最近更新 更多