线性布局与滚动视图和其他线性布局重叠

时间:2019-02-09 18:20:59

标签: android scrollview android-linearlayout toolbar

最近我遇到了一个问题。我的编辑文本和图像按钮所在的线性布局与我的工具栏和滚动视图重叠。我已经尝试了诸如layout_below等其他功能,但没有任何效果。 Groupchat.xml

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".GroupChatActivity"
android:orientation="vertical">

<include
    android:id="@+id/group_chat_bar_layout"
    layout="@layout/app_bar_layout">
</include>

<ScrollView
    android:id="@+id/my_scroll_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/group_chat_bar_layout"
    android:layout_above="@+id/myLinearLayout">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <TextView
            android:id="@+id/group_chat_text_display"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:padding="10dp"
            android:textAllCaps="false"
            android:textSize="20sp"
            android:textColor="@android:color/background_dark"
            android:layout_marginStart="2dp"
            android:layout_marginEnd="2dp"
            android:layout_marginBottom="50dp"/>

    </LinearLayout>
</ScrollView>

<LinearLayout
    android:id="@+id/myLinearLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <EditText
        android:id="@+id/input_group_message"
        android:layout_width="270dp"
        android:layout_height="wrap_content"
        android:hint="Write message..." />

    <ImageButton
        android:id="@+id/send_message_button"
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:src="@drawable/send_message" />

</LinearLayout>

这是groupchat.xml文件的预览在Android Studio中的外观: enter image description here

这是应用程序使用此代码的外观。 This are the results

以防万一,这是我的工具栏的代码:Appbarlayout.xml

<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

在单独的xml中使用它,因为我在应用程序中将其用于其他活动,这就是为什么在Groupchat.xml中包含Ang的原因

我也正在关注这个兔兔。我建议您去看看,因为那是我遵循的。

go to this video

谢谢。

2 个答案:

答案 0 :(得分:0)

问题出在布局布置上。您的ID为:LinearLayout的myLinearLayout在RelativeLayout中未对齐,这就是为什么它在屏幕顶部呈现的原因。进行以下更改,对您有好处。

在ID为:myLinearLayout的LinearLayout中,添加以下行:

android:layout_alignParentBottom="true"

像这样:

<LinearLayout
    android:id="@+id/myLinearLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:orientation="horizontal">

答案 1 :(得分:0)

添加

 android:layout_below="@+id/group_chat_bar_layout"

此行到LinearLayout

<LinearLayout
    android:id="@+id/myLinearLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/group_chat_bar_layout"
    android:orientation="horizontal">

    <EditText
        android:id="@+id/input_group_message"
        android:layout_width="270dp"
        android:layout_height="wrap_content"
        android:hint="Write message..." />

    <ImageButton
        android:id="@+id/send_message_button"
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:src="@drawable/bkg" />

</LinearLayout>`