[Android] Abmob Banner 広告表示、非表示の切り替え

AdMobの広告表示を非表示にダイナミックに切り替えたいケースについて、たとえば無料アプリは広告で有料版は広告なしにしたいけどレイアウトを崩したく無い場合でしょうか。
 
画面の上部や底辺に張り付けてあるケースは比較的簡単ですが、広告の位置が他のUI部品の間に挿入されていて、非表示でのレイアウトも不自然にならないようにしないといけない場合です。
 
下は広告が画像に挟まれたレイアウトで、ボタンを押すスト広告が非表示になり、空いた隙間を埋めるかあるいは空けたままにする例です。
 

admobaddremove 1 170x300 - [Android] Abmob Banner 広告表示、非表示の切り替え
admobaddremove 2 170x300 - [Android] Abmob Banner 広告表示、非表示の切り替え

Android Studio 3.0.1
Android 8.1.0

 



AdMob Banner の設定

 
基本的なBanner広告設定ができている状態から始めます
尚、基本設定は こちら です

  1. 広告を表示したい箇所にLineaLayoutなどで定義
    • id を admob_layout
    • LinearLayout admobLayout = (LinearLayout) findViewById(R.id.admob_layout);
  2. addView でAdMobのViewを admobLayout  に貼る
    • admobLayout.addView(adMobView);
    • これで指定した箇所に広告を貼る事ができます
  3. removeView()を使って広告をLinearLayoutから削除して非表示にします
    • adMobView.setVisibility(AdView.GONE);
    • admobLayout.removeView(adMobView);
  4. 再度表示する場合は、また adView() を行う
    • admobLayout.addView(adMobView);
    • admobLayout.setVisibility(LinearLayout.VISIBLE);
    • adMobView.setVisibility(AdView.VISIBLE);

まとめると
MainActivity.java

 
activity_main.xml

 
抜けた広告の隙間をそのままにしたい場合は
最初から LinerLayout の height を 50dp のように指定することもできます。
 

 
strings.xml

 
AndroidManifest.xml

 
build.gradle

 

admobaddremove 1 170x300 - [Android] Abmob Banner 広告表示、非表示の切り替え
admobaddremove 3 170x300 - [Android] Abmob Banner 広告表示、非表示の切り替え

関連ページ:

  1. AdMob 広告を Android Studio で設定
  2. AdMob 表示、非表示の切り替え
  3. インタースティシャルの設置
  4. Interstitial 広告をクラスにまとめる
誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加




アプリ開発が上達するお勧め

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンラインのプログラミングスクールがいいでしょう、時間の制約がないところが一番の魅力です。

以下の3つはAndroidが学習できるオンラインスクールです。


TECH ACADEMY
Androidアプリコース



侍エンジニア塾
侍エンジニア塾 無料体験レッスン



CodeCamp
~約8,000名の受講生と80社以上の導入実績~
現役エンジニアのオンライン家庭教師CodeCamp





正直ネットや本では限界があります。直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。

尚、スクールがダメだと言う人がいますが、やる気があれば問題ありません。与えられるのを待っていてはいけないですね
欲しいものは取りに行くのです。


Google Pixel 3 XLグローバル版
SIMフリー 並行輸入品
6.3インチの大画面
背景をぼかすポートレートモード撮影


Anker PowerCore II Slim 10000
Power IQ 2.0搭載
iPhone & Android対応

シェアする

  • このエントリーをはてなブックマークに追加

フォローする