2015/06/21

AdMobについて(2)

AdMobの続きです。

今回のアプリでは、SurfaceView を使用していて、タイトル画面とAdMobの重ね合わせが必要になります。

タイトル画面は画像(pngファイル)で作成されていて、ボタンなどもすべて画像で作成済みの状態です。
(イメージボタンを使えば良かったのかもしれませんが、何故かうまく行かなかったのでOnTouchイベントで処理しています)

タイトル画面との重ね合わせはタイトル画面の view と AdMob の view を FrameLayout で実現できます。

※下のソースコードは、実際のソースコードから抜粋しています。

private FrameLayout flayout;

flayout = new FrameLayout(this); ← FlameLayoutの作成
gm = new GameMain(this , hd);    ← ゲーム本体のビュー作成
flayout.addView(gm, new FrameLayout.LayoutParams(                ← レイアウトへ追加
                    FrameLayout.LayoutParams.MATCH_PARENT,
                    FrameLayout.LayoutParams.MATCH_PARENT));
adview = new AdView(this);       ← AdMobのビュー作成
flayout.addView(adview, params); ← レイアウトへ追加
setContentView(flayout);         ← 表示の設定


表示するときには、flayoutに対してaddViewを行い、非表示にするときにはflayoutに対してremoveViewを行っています。

冷静に考えればそんなに難しくもないとは思うのですが、なにせ初めてのアプリ作成ということで、
ビューの使い方自体がはっきりわかっていなかったため苦労しました。

重ね合わせで行えば、他のゲームを作るときにも使い回すことができると思うので、
これはこれで良かったのかなぁと思います。

0 件のコメント:

コメントを投稿