0

我在我的活动中添加了一个广告,如下所示:

@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.languageselection);

    // Create the adView
    adView = new AdView(this, AdSize.BANNER, MY_AD_UNIT_ID);

    // Lookup your LinearLayout assuming it�s been given
    // the attribute android:id="@+id/mainLayout"
    LinearLayout layout = (LinearLayout) findViewById(R.id.ad_layout);

    // Add the adView to it
    layout.addView(adView);

    // Initiate a generic request to load it with an ad
    adView.loadAd(new AdRequest());


}

这可以很好地加载广告。但是,如果我单击菜单按钮并修改某些共享首选项并返回,则广告已消失并且不会重新填充。

这就是我从我的活动中导航出来的方式,请注意我没有在活动上调用完成,所以在 onCreate 中创建的广告应该仍然存在吗?

@Override
    public boolean onOptionsItemSelected(MenuItem item)
    {
        switch (item.getItemId())
        {
            case R.id.aboutme:
                startActivity(new Intent(this, About.class));
                return true;
            case R.id.help:
                startActivity(new Intent(this, Help.class));
                return true;
            case R.id.preferences:
                startActivity(new Intent(this, EditPreferences.class));
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }

如果我离开活动并返回,如何确保广告不会丢失?

4

1 回答 1

5

我个人在 onStart() 中创建了一个新的 AdRequest:

public void onStart() {
    super.onStart();
    if(adView != null) {
        adView.loadAd(new AdRequest());
    }
}
于 2012-01-03T21:02:19.877 回答