android - EditText 具有单文本行、换行和完成操作?

标签 android android-edittext

我正在尝试使用软键编辑时具有以下特征的 EditText。我准备好文档,在这里搜索,使用参数但找不到有效的配置。

  1. 屏幕上的 EditView View 有几行的高度(例如 3-4)。
  2. 内容文本为单行(即没有换行符)。
  3. 如果内容文本比 View 的宽度长,它应该换行到下一行
  4. 软键的 Enter 键显示完成操作标签。

我可以达到 {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);

有可能吗?有什么建议吗?

最佳答案

这种组合(以及 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);

关于android - EditText 具有单文本行、换行和完成操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8351254/

相关文章:

java - 在android中启动系统和第三方应用程序

android - 获取一天开始的时间戳

android - 如何立即在 TextView 中显示来自 Edittext 的文本?

java - EditText 密码切换按钮不显示密码

java - 带有芯片的 Android AutoCompleteTextView

android - 如何创建带有回调的 Android 服务?

没有 Activity 的 Android 可穿戴应用

android - 如何根据父级的尺寸调整 Android View 的大小

java - Android 获取 EditText 中的值

android - Galaxy Tab 中覆盖 EditText 的虚拟键盘