You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Toolbar遮挡RelativeLayout问题求助:布局约束调整无效

解决Toolbar遮挡RelativeLayout的问题

看了你的布局代码和问题描述,核心问题出在错误的布局约束混用和冗余属性上,我帮你梳理并修复这些问题:

1. 关键问题分析

  • 你的父布局是ConstraintLayout,但给RelativeLayout2加了android:layout_below="@id/toolbar"——这是RelativeLayout专属属性,在ConstraintLayout里完全无效,直接删掉就行。
  • app:layout_constraintStart_toEndOf="@id/toolbar"这个约束大错特错:Toolbar是match_parent宽度,会把RelativeLayout2的左边缘推到屏幕外,直接改成app:layout_constraintStart_toStartOf="parent"让它对齐父布局左边缘。
  • 你同时设置了android:layout_marginTop="80dp"和app:layout_constraintTop_toBottomOf="@id/toolbar",这会让RelativeLayout2在Toolbar下方再额外偏移80dp,如果你想让它紧挨着Toolbar,去掉这个大数值的marginTop即可;需要间距的话改成16dp这类合理值。
  • 最后一个Button的代码没写完,补全属性避免编译错误。

2. 修改后的完整布局代码

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 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"
    android:background="@color/colorBackground"
    tools:context="husforbi.com.accenture.husforbi.HomeActivity">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/colorPrimaryDark"
        android:elevation="4dp"
        android:theme="@style/ThemeOverlay.AppCompat.ActionBar"/>

    <RelativeLayout
        android:id="@+id/relativeLayout2"
        android:layout_width="match_parent"
        android:layout_height="105dp"
        android:layout_marginHorizontal="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginBottom="8dp"
        android:background="@color/colorPrimary"
        app:layout_constraintBottom_toTopOf="@+id/relativeLayout"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@id/toolbar">

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_alignParentStart="true"
            android:layout_centerVertical="true"
            app:srcCompat="@mipmap/ic_launcher_round" />

        <TextView
            android:id="@+id/sellername"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginStart="14dp"
            android:layout_toEndOf="@+id/imageView2"
            android:textColor="@color/colorPrimaryDark"
            android:textSize="18sp" />

        <TextView
            android:id="@+id/sellerid"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignStart="@+id/sellername"
            android:layout_below="@+id/sellername"
            android:textColor="@color/colorPrimaryDark" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout"
        android:layout_width="match_parent"
        android:layout_height="154dp"
        android:layout_marginHorizontal="8dp"
        android:layout_marginTop="8dp"
        android:background="@color/colorPrimary"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/relativeLayout2">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentStart="true"
            android:layout_alignParentTop="true"
            android:layout_marginHorizontal="8dp"
            android:layout_marginTop="8dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/textView4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="@string/Newspaper_tag"
                android:textColor="@color/colorPrimaryDark"
                android:textSize="18sp" />

            <TextView
                android:id="@+id/newsCount"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:textAlignment="textEnd"
                android:textColor="@color/colorPrimaryDark"
                android:textSize="18sp" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginHorizontal="8dp"
            android:layout_marginTop="50dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/textView6"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="@string/Calendar_tag"
                android:textColor="@color/colorPrimaryDark"
                android:textSize="18sp" />

            <TextView
                android:id="@+id/calCount"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:textAlignment="textEnd"
                android:textColor="@color/colorPrimaryDark"
                android:textSize="18sp" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:orientation="horizontal">

            <Button
                android:id="@+id/suggest"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@android:color/holo_blue_light"
                android:text="@string/Fix_tag"
                android:textColor="@android:color/background_light" />

            <Button
                android:id="@+id/rate"
                android:layout_width="0dp"
                android:layout_height="50dp"
                android:layout_weight="1"
                android:background="@android:color/holo_blue_light"
                android:text="@string/Rate_tag"
                android:textColor="@android:color/background_light" />
        </LinearLayout>
    </RelativeLayout>
</android.support.constraint.ConstraintLayout>

额外小建议

  • 尽量统一用ConstraintLayout的约束布局,别混用不同布局的属性,这样代码更易维护。
  • 用layout_marginHorizontal代替同时写layout_marginStart和layout_marginEnd,代码更简洁。

内容的提问来源于stack exchange,提问作者Maja Okholm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:29:02