我正在完成一个应用程序的实现,该应用程序具有发送消息的内部活动(只需editText和两个按钮 - 发送和取消,然后将消息发送到固定地址)。当我开始这个活动时,我会在屏幕上看到textBox和键盘,它会立即显示出来。但缺点是theese按钮被键盘覆盖或半覆盖,我想要的就是与消息类似。当键盘可见时,缩小文本字段并在键盘上方的添加按钮中显示,如果我点击屏幕下方的箭头,键盘消失,此editText将占据几乎整个屏幕,并且底部会有这两个按钮......这可能是真的吗?
编辑:如何实现,此屏幕将显示所有按钮的活动键盘?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:orientation="vertical"
android:layout_height="fill_parent"
android:background="@drawable/poz3"
android:padding="10dip">
<TextView
android:text="Message:"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="25dip"
android:textColor="@color/black"
/>
<EditText
android:id="@+id/message"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="Write message here"
android:gravity="top"
android:lines="7"
android:inputType="textShortMessage|textAutoCorrect|textCapSentences|textMultiLine"
android:imeOptions="actionSend|flagNoEnterAction"
/>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:orientation="horizontal"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/enquirySendButton"
android:layout_width="fill_parent"
android:layout_height="60dip"
android:text="Send"
android:layout_weight="1.0"
android:background="@drawable/custom_button"
/>
<Button
android:id="@+id/enquiryExitButton"
android:layout_width="fill_parent"
android:layout_height="60dip"
android:text="Cancel"
android:layout_weight="1.0"
android:background="@drawable/custom_button"
/>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:1)
让它运转起来。 在你的XML布局中,在主布局(RelativeLayout)中有一个带按钮的LinearLayout和android:layout_alignParentBottom =“true”。在下面添加您的其他布局,使用子句android:layout_above =“@ id / yourButtonLayout” 我的现实生活代码是这样的:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textSize="14dip"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/taskEditFormBottomButtons"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:baselineAligned="true"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
>
<Button
android:id="@+id/taskEditFormBTSave"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:text="@string/save"
android:layout_weight="0.5"
/>
<Button
android:id="@+id/taskEditFormBTCancel"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:text="@string/cancel"
android:layout_weight="0.5"
/>
</LinearLayout>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/taskEditFormBottomButtons"
>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
....
>
....
</RelativeLayout>
</ScrollView>
</RelativeLayout>
答案 1 :(得分:0)
如果还没有尝试过,这可能会有所帮助..
http://developer.android.com/resources/articles/on-screen-inputs.html