Android 在relativeLayout底部显示AdMob时出现问题

Android 在relativeLayout底部显示AdMob时出现问题,android,android-layout,admob,android-linearlayout,android-relativelayout,Android,Android Layout,Admob,Android Linearlayout,Android Relativelayout,我有这个特殊情况的问题,我需要告诉我的亲戚,它分为两部分,一部分必须是80%的屏幕高度,这是一个滚动网格与图像视图。其他百分比必须用于Admob横幅 问题在于,当在低分辨率设备中加载此应用程序时,Admob横幅不会显示。我认为,因为在我的布局中,添加的高度大于横幅容器的高度 正确的方法是什么?我尝试将MATCH_PARENT放在我的gridView的高度,并将内容和ALIGN_PARENT_BOTTOM与下面的gridView组合起来,但不起作用,添加不会显示在屏幕上,我认为这是因为gridVi

我有这个特殊情况的问题,我需要告诉我的亲戚,它分为两部分,一部分必须是80%的屏幕高度,这是一个滚动网格与图像视图。其他百分比必须用于Admob横幅

问题在于,当在低分辨率设备中加载此应用程序时,Admob横幅不会显示。我认为,因为在我的布局中,添加的高度大于横幅容器的高度

正确的方法是什么?我尝试将MATCH_PARENT放在我的gridView的高度,并将内容和ALIGN_PARENT_BOTTOM与下面的gridView组合起来,但不起作用,添加不会显示在屏幕上,我认为这是因为gridView的MATCH PARENT

这是我的一些代码:

RelativeLayout mainLayout = new RelativeLayout(this);
        mainLayout.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));     
        setContentView(mainLayout); 

gridView = new GridView(this);
        gridView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
        gridView.setId(1);
mainLayout.addView(gridView);   

adViewContainer = new LinearLayout(this);
        adViewContainer.setId(2);
        RelativeLayout.LayoutParams adViewContainerParams = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
        adViewContainerParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
        adViewContainerParams.addRule(RelativeLayout.BELOW, 1);
        mainLayout.addView(adViewContainer, adViewContainerParams); 

我尝试将80%的高度放在gridView上,20%放在横幅上,但当应用程序在低分辨率设备上显示时,横幅不会显示。

您的布局结构应如下所示:

// Root view 
<LinearLayout ...>

    <GridView 
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
    />

    <AdView ... />
</LinearLayout>
//根视图

为什么不使用admob添加横幅的默认大小?将添加容器的高度设置为包裹内容,将alignparentbottom设置为true,将layout_置于gridview的上方,并给出添加容器的id。确保首先声明ad容器,然后声明gridview