如何在 Android 上创建随键盘一起出现的 EditText
How to create an EditText that goes up with the Keyboard on Android
我一直在研究如何创建类似于下图的内容,我创建了一个带有图标“发送”的 ImageView 的 EditText,但我无法管理我们如何创建与此类似的东西,一些东西随键盘一起上去。
您可以使用以下代码来处理这种情况-
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/secondarybackground" >
<ListView
android:id="@+id/messages_view"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/snackbar"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="@color/secondarybackground"
android:divider="@null"
android:dividerHeight="0dp"
android:listSelector="@android:color/transparent"
android:stackFromBottom="true"
android:transcriptMode="normal"
tools:listitem="@layout/message_sent" >
</ListView>
<RelativeLayout
android:id="@+id/textsend"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="@color/primarybackground" >
<EditText
android:id="@+id/textinput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/textSendButton"
android:background="@color/primarybackground"
android:ems="10"
android:imeOptions="flagNoExtractUi|actionSend"
android:inputType="textShortMessage|textMultiLine|textCapSentences"
android:minHeight="48dp"
android:minLines="1"
android:paddingBottom="12dp"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:paddingTop="12dp"
android:textColor="@color/primarytext" >
<requestFocus />
</EditText>
<ImageButton
android:id="@+id/textSendButton"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="?android:selectableItemBackground"
android:src="@drawable/ic_action_send_now_offline" />
</RelativeLayout>
</RelativeLayout>
我一直在研究如何创建类似于下图的内容,我创建了一个带有图标“发送”的 ImageView 的 EditText,但我无法管理我们如何创建与此类似的东西,一些东西随键盘一起上去。
您可以使用以下代码来处理这种情况-
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/secondarybackground" >
<ListView
android:id="@+id/messages_view"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/snackbar"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="@color/secondarybackground"
android:divider="@null"
android:dividerHeight="0dp"
android:listSelector="@android:color/transparent"
android:stackFromBottom="true"
android:transcriptMode="normal"
tools:listitem="@layout/message_sent" >
</ListView>
<RelativeLayout
android:id="@+id/textsend"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="@color/primarybackground" >
<EditText
android:id="@+id/textinput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/textSendButton"
android:background="@color/primarybackground"
android:ems="10"
android:imeOptions="flagNoExtractUi|actionSend"
android:inputType="textShortMessage|textMultiLine|textCapSentences"
android:minHeight="48dp"
android:minLines="1"
android:paddingBottom="12dp"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:paddingTop="12dp"
android:textColor="@color/primarytext" >
<requestFocus />
</EditText>
<ImageButton
android:id="@+id/textSendButton"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="?android:selectableItemBackground"
android:src="@drawable/ic_action_send_now_offline" />
</RelativeLayout>
</RelativeLayout>