2013-08-24 26 views
3

我想添加admob广告到我的游戏应用程序。然而,游戏绘图都是在没有布局的代码中进行的,只是游戏绘制的Surfaceview。我如何绘制广告查看到SurfaceView画布

我不能使用 layout.addView(adView); 该文档给出了一个例子,因为我的游戏不使用布局,实际上布局文件夹被删除。

中的主要活动我定义一个游戏面板

的GamePanel =新MainGamePanel(本);

的的GamePanel被实例化:

类MainGamePanel扩展SurfaceView实现SurfaceHolder.Callback

,然后我正好提请使用Canvas绘图方法surfaceview。

让我怎么加我在活动的surfaceview创建AdView的对象:

的AdView =新的AdView(这一点,AdSize.BANNER, “MY_PUU_NUMBER”);

gamepanel.addView(adView)不起作用。也许我会被迫从一开始就使用布局,但这会让事情变得复杂。

回答

2

我发现添加的AdMob广告的surfaceView应用最好的解决方法就是以编程方式创建一个布局和绘制两个视图,如下所示:

LinearLayout ll = new LinearLayout(this); 
ll.setOrientation(LinearLayout.VERTICAL); 

ll.addView(adView); // The ad banner 
ll.addView(gamepanel); // The SurfaceView object 

它实际上没有绘制的AdView到surfaceView ,但这是我发现包含它的最佳方式。

请注意,横幅广告会降低您的帧速率,因此要审慎。不幸的是,如果你公司的名字不是Square Enix,那么现在很难让安卓游戏玩家甚至提前0.99出场,所以广告可能是一个必要的罪恶。