2

我一直在关注本教程 ( http://www.kilobolt.com/day-7-creating-an-android-game-from-start-to-finish.html ) 来创建 Android 游戏。现在我想在GameScreenClass 里面添加 AdMob 广告到游戏中private void drawGameOverUI() {...}

我从 SampleGameClass 中得到了上下文

private static Context context;
public Screen getInitScreen() {
        SampleGame.context = getApplicationContext();
...
}
public static Context getAppContext() {
        return SampleGame.context;
}

GameScreen里面private void drawGameOverUI()我有这个

contextGameScreen = SampleGame.getAppContext();
LinearLayout layout = new LinearLayout(contextGameScreen);    
adView = new AdView(contextGameScreen, AdSize.BANNER, "...");
layout.addView(adView);
adView.loadAd(new AdRequest());

但我得到了这个错误"Cannot resolve constructor 'AdView(android.content.Context, com.google.ads.AdSize, java.lang.String)'"(contextGameScreen, AdSize.BANNER, "...");

在 Google Developers(https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#android)上,他们使用“this”,但是当我使用时(this, AdSize.BANNER, "...");出现错误"Cannot resolve constructor 'AdView(com.name.GameScreen, com.google.ads.AdSize, java.lang.String)'"

你能帮我解决这个问题,如何解决这个错误,并让它工作吗?这对我来说意义重大。还有“这个”到底是什么?

4

1 回答 1

1

你的问题是 contextGameScreen 在

new AdView(contextGameScreen, AdSize.BANNER, "...")

不是 android.content.Context 的实例。例如一个活动或一个应用程序。

由于您只提供了断开连接的代码片段,因此很难准确地确定您在做什么,但您需要做的是为 AdView 构造函数提供将嵌入其中的 Activity。

于 2013-09-19T23:40:52.273 回答