我正在创建一个提供聊天功能的应用程序。屏幕上有一个EditText,我在上面设置了OnKeyListener。每当用户在键入消息后按下“Enter”键时,该消息就会显示在屏幕上。它工作正常。这是我的EditText:

<EditText android:id="@+id/chatMessageField"
    android:layout_height="wrap_content" android:layout_width="fill_parent"
    android:layout_gravity="center_horizontal|center_vertical"
    android:layout_marginRight="5dip" android:layout_marginLeft="5dip"
    android:maxLines="2" android:minLines="1" android:scrollbars="vertical"
    android:hint="@string/chatMessageHintText" android:textColorHint="#3b64a8">
</EditText>

问题是,当用户希望在EditText包装文本并转到新行之前转到新行时。现在,如果用户要转到新行并按“Enter”键,则将发送消息。

在某些聊天室中,我看到同时按下“Shift + Enter”(或任何其他按键组合)会将用户带到新行。我们如何检测Android中同时按下的“Shift + Enter”(或任何其他键组合)键?有什么方法可以在Android中实现此功能吗?

最佳答案

只需尝试...可能会有所帮助。

将EditText的输入设置为

youredittext.setInputType(EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE);

然后加:
android:singleLine="false"

或者
youredittext.setSingleLine(false);

也去Click Here

10-04 17:59