【发布时间】:2019-09-04 20:41:56
【问题描述】:
我遇到了一个问题,当我在 xml 中使用 inputtype 作为 textmultiline 并且在 edittext 中使用 imeiOptions 作为 KEYCODE_ENTER 时,我的 setOnEditorActionListener 不起作用,但是如果我将 inputtype 更改为 text,那么它工作正常。我无法理解为什么这不适用于 textMultiline。 我在 xml 中定义的 Edittext 是-:
<EditText
android:id="@+id/etremarks"
android:layout_width="match_parent"
android:layout_height="@dimen/_200sdp"
android:background="@drawable/shape_edittext_pink_border"
android:fontFamily="@font/share"
android:gravity="top"
android:hint="Enter Message"
android:inputType="textMultiLine"
android:padding="5dp"
android:textColor="#000000" />
and my code for edittext in java file is-:
etremarks.addTextChangedListener(mTextEditorWatcher);
etremarks.setImeOptions(KeyEvent.KEYCODE_ENTER);
etremarks.setOnEditorActionListener(new TextView.OnEditorActionListener()
{
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event)
{
boolean handled = false;
if (actionId == KeyEvent.KEYCODE_ENTER)
{
// Handle pressing "Enter" key here
Toast.makeText(SendBulkSmsToClients.this, etremarks.getText(), Toast.LENGTH_SHORT).show();
handled = true;
}
return handled;
}
});
请分享您对这个问题的宝贵意见
谢谢
【问题讨论】:
-
在上面的例子中不清楚。,基本上我需要的是当用户在软键盘中按下回车按钮时,那时我必须向编辑文本添加一些编码参数。所以我需要编辑器监听器但是它不适用于多行和 keycode.enter。