首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NativeExpressAdView in a CardView

NativeExpressAdView in a CardView
EN

Stack Overflow用户
提问于 2016-11-11 21:29:11
回答 1查看 1.2K关注 0票数 2
代码语言:javascript
复制
<LinearLayout
    orientation="vertical">
...
   <android.support.v7.widget.CardView
        android:id="@+id/card_pitch"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        card_view:cardCornerRadius="0dp">

        <com.google.android.gms.ads.NativeExpressAdView
            android:id="@+id/adview_small_light"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:visibility="gone"
            ads:adSize="FULL_WIDTHx100"
            ads:adUnitId="xxx">
        </com.google.android.gms.ads.NativeExpressAdView>

    </android.support.v7.widget.CardView>

1-11 16:21:22.211 28899-28899/?W/Ads:没有足够的空间显示广告。需要411x100dp,但只有379x385 dp。11-11 16:21:22.211 28899-28899/?W/Ads:没有足够的空间显示广告。需要411x100dp,但只有379x100dp。11-11 16:21:22.211 28899-28899/?W/Ads:没有足够的空间显示广告。需要411x100 dp,但只有379x173 dp。11-11 16:21:22.211 28899-28899/?W/Ads:没有足够的空间显示广告。需要411x100dp,但只有379x100dp。

广告没有显示,CardView上的保证金与FULL_WIDTH有问题。有办法这样做吗?使用FULL_WIDTH显示add,并在CardView上显示一些空白。我还尝试在父LinearLayout上添加填充和边距,而不是在CardView上使用同样的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-11 22:41:08

FULL_WIDTH常量指定广告应该占据设备屏幕的整个宽度。在你的例子中,广告没有足够的空间,因为它的一些祖先引入了额外的水平填充。要完成目标,您可以确定运行时的宽度应该是多少。您所需要做的就是计算设备的宽度,并减去正确的填充量。例如:

代码语言:javascript
复制
DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
width = displayMetrics.widthPixels / displayMetrics.density;
adView.setAdSize(new AdSize(width - padding, 100));

需要注意的是,这里的值是dip (密度无关的像素),而不是像素。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40556494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档