如何在横向和纵向的底部设置广告横幅?

时间:2015-12-14 13:54:03

标签: android admob banner-ads

我想在应用处于纵向模式时在屏幕底部显示我的AdMob横幅,在横向模式下显示在屏幕顶部。那么如何将这些添加到我的应用程序中呢?

目前我正在使用单独的布局(布局端口布局 - 土地

2 个答案:

答案 0 :(得分:1)

为什么不尝试识别屏幕方向。每当屏幕更改时,它会重新创建活动,您可以通过休闲方法获得屏幕方向

int orientation=this.getResources().getConfiguration().orientation;
if(orientation==Configuration.ORIENTATION_PORTRAIT){
   //code for portrait mode
}
else{
    //code for landscape mode
}

尝试以编程方式添加您的布局。如果您使用的是相对布局,则可以像这样使用addRule

RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, height);
lp.addRule(RelativeLayout.BELOW, lastId);   

您可以根据要求添加规则。以上是添加规则的方法。类似地,有一种方法可以删除规则

params.removeRule(RelativeLayout.BELOW);

或者如果您愿意,可以根据需要在条件下充气。 希望这会有所帮助!

答案 1 :(得分:0)

至少有两种方法可以做到。

基于XML(recommended in many casesalso by @CommonsWare)。

Something like

<com.google.ads.AdView
    android:id="@+id/adView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    app:adSize="BANNER"
    app:adUnitId="a1512f50d8c3692"
    app:loadAdOnCreate="true"
    app:testDevices="TEST_EMULATOR, TEST_DEVICE_ID" >
</com.google.ads.AdView>

这应该通过android:layout_alignParentBottom="true"android:layout_alignParentLeft="true"将其添加到底部。如果您希望它位于顶部,请尝试使用android:layout_alignParentTop

你可能需要调整一些(adUnitId会想到)。 然后,在代码中填写something like

AdView adView = (AdView) findViewById(R.id.adView);
adView.loadAd(new AdRequest());

基于代码的

如果你真的想这么做,@ashutiwari4's answer乍一看看起来不错。