如何将AdView和NestedScrollView彼此分离,并阻止它们在android studio中重叠?

lvjbypge  于 2023-02-06  发布在  Android
关注(0)|答案(1)|浏览(88)

我试图在android studio中为我的adView横幅广告创建一个空间,但adView与我的小部件NestedScrollView重叠,并且覆盖了NestedScrollView底部的文字。我的所有xml代码都封装在小部件ConstraintLayout中。如何将adView和NestedScrollView小部件从相互重叠中分离出来?这是我的android studio activity_main. xml页面的当前格式

<androidx.constraintlayout.widget.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:orientation="vertical"
    android:background="@color/grey"
    tools:context=".MainActivity">

    <androidx.core.widget.NestedScrollView
        android:id="@+id/ScrollView"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

</androidx.core.widget.NestedScrollView>
    <com.google.android.gms.ads.AdView
        xmlns:ads="http://schemas.android.com/apk/res-auto"
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        ads:adSize="BANNER"
        ads:adUnitId="ca-app-pub-3940256099942544/6300978111"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent">
    </com.google.android.gms.ads.AdView>

</androidx.constraintlayout.widget.ConstraintLayout>
0md85ypi

0md85ypi1#

您的NestedScrollView的高度设置为match_parent,这使其成为ConstraintSet的大小。如果您将其设置为0dp,并约束父视图的顶部到顶部以及adView的底部到顶部,则它将以两者分离的方式进行布局。

<androidx.core.widget.NestedScrollView
        android:id="@+id/ScrollView"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintTop_toTopOf="parent"  
        app:layout_constraintBottom_toTopOf="@id/adView"  >

相关问题