我创建了一个游戏(surfaceview),我正在尝试实现其中必须修复底部的admob ..我已成功实现了admob并正确显示它但我所做的是我在主要活动中称之为。
AdView adView = (AdView)findViewById(R.id.adView);
adView.loadAd(new AdRequest());
我在所有布局上都有这个
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/unit_id"
ads:loadAdOnCreate="true"
/>
我需要做的是显示admob,但即使屏幕切换它固定在屏幕的底部也不会受到影响。我搜索过这样的东西,但我没有成功。我希望有人可以帮助甚至解释我如何实现这一目标。
的 P.S。它就像所有活动的横幅一样。
答案 0 :(得分:0)
仅使用不带Java代码的Xml编码
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="App ID"`enter code here`
ads:testDevices="25"
ads:loadAdOnCreate="true" />
</RelativeLayout>
答案 1 :(得分:0)
您可以将整个屏幕包裹在相对布局中吗?然后,您可以将横幅与父级底部对齐。您应该使用layout_above
声明其他项目,以使其高于横幅。最简单的方法是将它们包装在另一个布局中。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/adView" >
... your other items can go here
</RelativeLayout>
<com.google.ads.AdView
android:id="@id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="App ID"`enter code here`
ads:testDevices="25"
ads:loadAdOnCreate="true" />
</RelativeLayout>
答案 2 :(得分:0)
我认为只有一个独特的横幅跨越多个活动将会很困难(或不可能)。 ActivityGroup
小组课可能已经允许这种事情,但它从来没有受欢迎,反正已经被弃用了一段时间。
同时,对于在一个屏幕的范围内切换主要视图的UX主题仍有很多需求。但该机制已经过重新设计以使用Fragments
。如果你可以让你的SurfaceView内容在Fragment中工作,那么这可能是你最好的选择。布局可能如下所示:
<LinearLayout>
<Fragment>
<AdView>
<LinearLayout>
最近我做了这种事情时,我只是将AdMob代码放在每个Activity的底部,然后让它在每次推送时重新加载新广告。关于过于频繁的广告请求,谷歌方面没有责骂,我获得了大量点击。
祝你好运!