5

我有一个问题,当单击EditText布局底部的 时,会显示一个软键盘。问题是,当我单击EditText并且软键盘显示时,我可以滚动浏览我的 ListView,但是我在列表视图之前声明的布局,即ActionBarRelativeLayout,都被隐藏了。在我AndroidManifest的声明中:android:windowSoftInputMode="stateAlwaysHidden|adjustPan"。我认为这是因为我没有添加 aScrollView作为布局的父级,但是当我这样做时,没有任何改变。这是我的尝试:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fresco="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fillViewport="true">
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/comments_layout">

    <android.support.design.widget.AppBarLayout android:layout_height="wrap_content"
        android:layout_width="match_parent" android:theme="@style/AppTheme.AppBarOverlay"
        android:id="@+id/comments_appbar">

    <android.support.v7.widget.Toolbar android:id="@+id/comments_toolbar"
        android:layout_width="match_parent" android:layout_height="wrap_content"
        android:background="?attr/colorPrimary" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
        app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />

    </android.support.design.widget.AppBarLayout>

    <RelativeLayout
        android:layout_below="@id/comments_appbar"
        android:id="@+id/view_post"
        android:layout_width="match_parent"
        android:paddingRight="5dp"
        android:paddingLeft="5dp"
        android:orientation="horizontal"
        android:layout_height="175dp"
        android:background="#e6e6e6">

        <com.facebook.drawee.view.SimpleDraweeView
            android:layout_marginTop="15dp"
            android:id="@+id/poster_picture"
            android:layout_width="75dp"
            android:layout_height="75dp"
            android:layout_marginLeft="10dp"
            fresco:placeholderImage="@mipmap/blank_prof_pic"
            fresco:roundedCornerRadius="5dp"
            />

        <TextView
            android:layout_marginLeft="5dp"
            android:layout_marginTop="15dp"
            android:layout_toRightOf="@id/poster_picture"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="15sp"
            android:textStyle="bold"
            android:id="@+id/poster_name"/>

        <TextView
            android:layout_alignParentRight="true"
            android:layout_marginTop="15dp"
            android:layout_toRightOf="@id/poster_name"
            android:layout_marginLeft="5dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="15sp"
            android:id="@+id/post_date"/>

        <TextView
            android:layout_marginLeft="5dp"
            android:layout_toRightOf="@id/poster_picture"
            android:layout_below="@id/poster_name"
            android:textSize="20sp"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/view_status" />

    </RelativeLayout>

            <ListView
                android:id="@+id/lv_comments_feed"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_above="@+id/send_message"
                android:layout_below="@+id/view_post">
            </ListView>

        <LinearLayout
            android:id="@+id/send_message"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="5dp"
            android:layout_alignParentBottom="true"
            android:orientation="horizontal" >

            <EditText
                android:id="@+id/write_comment"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical|center_horizontal"
                android:layout_weight="5"
                android:gravity="top|left"
                android:hint="Comment back!"
                android:inputType="textMultiLine"
                android:background="@color/white"
                android:scrollHorizontally="false" />

            <Button
                android:id="@+id/send_comment"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical|center_horizontal"
                android:gravity="center"
                android:text="send"
                android:textAppearance="?android:attr/textAppearanceMedium" />
        </LinearLayout>

</RelativeLayout>
    </ScrollView>

RelativeLayout开始和ActionBar都是隐藏的,但是ListView当我的软键盘弹出并单击我的EditText. 有想法该怎么解决这个吗?谢谢!

4

3 回答 3

2

代替

android:windowSoftInputMode="stateAlwaysHidden|adjustPan"

写下

android:windowSoftInputMode="adjustPan|adjustResize"

我会帮你的

于 2015-12-06T08:26:07.130 回答
0

我在我的AndroidManifest文件中使用了以下代码:

android:windowSoftInputMode="adjustResize"
于 2018-06-06T05:56:43.367 回答
0

我通过使用解决了这个问题

android:isScrollContainer="false"

在滚动视图和清单文件中添加

android:windowSoftInputMode="adjustResize"
于 2016-06-27T03:44:50.217 回答