【问题标题】:Android soft keyboard hides RecyclerViewAndroid软键盘隐藏RecyclerView
【发布时间】:2016-09-10 13:07:04
【问题描述】:

我正在尝试使用RecyclerView 和底部固定的EditText 创建一个cmets/chat 布局。请不要说adjustPanadjustResize。不工作。 adjustPan 隐藏键盘。

我真的需要帮助,这真的很令人沮丧

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/appbarlayout"
        android:paddingTop="@dimen/app_bar_top_padding">

        <android.support.v7.widget.Toolbar
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:theme="@style/ThemeOverlay.AppCompat.ActionBar"
            android:id="@+id/toolbar"
            app:titleTextColor="#FFFFFF" />

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


    <android.support.v7.widget.RecyclerView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/recycler_view"
        android:layout_below="@+id/appbarlayout"
        android:isScrollContainer="false"
        android:stackFromBottom="true"
        android:transcriptMode="normal"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#2b2b2b"
        android:orientation="vertical"
        android:id="@+id/chat_box"
        android:layout_alignParentBottom="true">

        <View
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:background="?android:attr/listDivider"/>

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="16dp">

            <EditText
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:hint="Skriv en kommentar"
                android:background="@android:color/transparent"
                android:textColor="@color/white"
                android:textColorHint="#d4d4d4"
                android:inputType="textCapSentences|textMultiLine"
                android:layout_marginRight="40dp"/>

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/ic_send"
                android:background="@drawable/click"
                android:layout_gravity="right|center_vertical" />

        </FrameLayout>

    </LinearLayout>


</RelativeLayout>

【问题讨论】:

    标签: android android-recyclerview chat android-softkeyboard


    【解决方案1】:

    不知道为什么,但 Gabe Sechan 给出的解决方案对我不起作用。对我有用的是在清单文件中添加它。

    android:windowSoftInputMode="adjustPan"
    

    【讨论】:

      【解决方案2】:

      正确答案是adjustResize,因此应用程序在键盘上方调整大小。但是,要使其正常工作,您的布局的其余部分需要编写为可调整大小。你的不是,因为回收站视图没有固定到位。在其上添加layout_above="@+id/chatBox" 约束,使其位于编辑文本上方,并且应调整大小以正确适应空间。

      此外,adjustPan 不会隐藏键盘。如果是这样,那么您的代码中确实有问题。 adjustPan 无需调整大小即可向上滑动您的应用程序。如果您能找出应用程序中隐藏键盘的原因,这可能就是您想要的。

      【讨论】:

      • 不知道为什么,但不适合我。具有相同类型的布局
      猜你喜欢
      • 2022-12-14
      • 2014-04-07
      • 1970-01-01
      • 1970-01-01
      • 2011-02-17
      • 2012-10-28
      • 2012-05-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多