显示键盘的控制位置

时间:2016-01-01 22:04:32

标签: android android-layout autocompletetextview

正如我在Android中的新手,我正在编写一个应用程序,在我的布局文件中,我有一个编辑文本和屏幕下方的两个按钮,如下所示:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:layout_alignParentBottom="true"
    android:orientation="vertical"
    android:layout_gravity="bottom">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_weight="1"
        android:orientation="horizontal">
        <EditText
            android:id="@+id/composeMessageBody"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:background="@android:color/white"
            android:hint="@string/message_hint"
            android:textColor="@android:color/black"
            android:textSize="18dp" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_weight="1"
        android:orientation="horizontal">
        <Button
            android:id="@+id/Button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:layout_weight="1"
            android:background="@drawable/button_style_left" />
        <Button
            android:id="@+id/Button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:layout_weight="1"
            android:background="@drawable/button_style_right" />
    </LinearLayout>

这就是结果:

当用户点击编辑文本时,键盘越过绿色按钮,我的操作栏和屏幕上方部分消失或消失。这是我的问题:我怎么能得到如下图所示的状态?

在这张图片中,发送按钮和编辑文本都在一行中,对我来说是两行。谢谢你们。

2 个答案:

答案 0 :(得分:1)

我认为您需要在AndroidManifest.xml文件中添加以下内容:

  android:windowSoftInputMode="stateVisible|adjustResize">

<activity>部分。

之后,您的清单xml文件将如下所示

 ?xml version="1.0" encoding="utf-8"?>
<manifest package="com.example.piotr.myapplication"
          xmlns:android="http://schemas.android.com/apk/res/android">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:windowSoftInputMode="stateVisible|adjustResize">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

你的View afet打开键盘看起来像这样

请同时查看:How to add a bottom menu to Android activity

如果您有任何疑问,请随意提问。

希望有所帮助

答案 1 :(得分:0)

 <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:windowSoftInputMode="adjustPan"
    >

在你的清单文件中添加它。