在RecyclerView底部显示横幅广告?

时间:2016-01-20 19:46:54

标签: android android-fragments admob

我想在RecyclerView中显示一个简单的横幅广告,用于加载图片列表。只是一个简单的底部横幅广告。

这是我的RecyclerViewXML

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.RecyclerView
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/list"
android:name="com.example.fragmentactivity"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FAC873"
app:layoutManager="StaggeredGridLayoutManager"
tools:context="com.example.fragmentactivity"
tools:listitem="@layout/fragment_image" />

如果我尝试将recyclerView置于RelativeLayout内或其他任何内容中,那么我可以在底部包含横幅,但之后它不会显示任何图像。

如何在该视图中显示横幅?

我尝试了几乎所有可用的解决方案来动态添加横幅,但没有任何效果

2 个答案:

答案 0 :(得分:0)

您应该将横幅添加到RecyclerView的底部和前面。为此,这将对您有所帮助:

用法:替换RelativeLayout

AdMobView
<?xml version="1.0" encoding="utf-8"?>
    <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:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.v7.widget.RecyclerView
            android:id="@+id/list"
            android:name="com.example.fragmentactivity"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#FAC873"
            app:layoutManager="StaggeredGridLayoutManager"
            tools:context="com.example.fragmentactivity" />

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="52dp"
            android:background="#fff"
            android:layout_alignParentBottom="true" />
    </RelativeLayout>

说明:。 RelativeLayout低于RecyclerViewandroid:layout_alignParentBottom="true"覆盖RecyclerView

答案 1 :(得分:0)

我首先在底部添加adview,然后在其上方添加回收站视图(在早期放置的adview底部留有边距,然后使用回收站视图填充父级),使其工作得非常顺利。我的布局如下:

注意:在我的情况下,MoPubView将其替换为Admob中的Adview

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent"
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="5dp"
    android:paddingBottom="5dp"
    android:background="@color/color_green"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:showIn="@layout/app_bar_category_list"
    tools:context=".CategoryListActivity">

    <!-- I'm using Mopub, replace the MoPubView with AdView in your case -->
    <com.mopub.mobileads.MoPubView
        android:id="@+id/adview"
        android:layout_width="fill_parent"
        android:layout_height="50dp"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true" />

    <android.support.v7.widget.RecyclerView
        android:id="@+id/my_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="fill_parent"
        android:scrollbars="vertical"
        android:layout_marginBottom="60dp" />

</RelativeLayout>