2012-01-01 14 views
4

AdMobをキャンバスに表示する際に問題が発生しました。AdMobをキャンバスに描画するにはどうすればよいですか?

私のコードは以下の通りです。

layout = new LinearLayout(getContext()); 
    adView = new AdView((Activity) getContext(), AdSize.BANNER, "############"); 
    layout.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 
    adView.setVisibility(View.VISIBLE); 
    layout.addView(adView); 
    TextView textView = new TextView(context); 
    textView.setVisibility(View.VISIBLE); 
    textView.setText("Hello world"); 
    layout.addView(textView); 
    AdRequest adRequest = new AdRequest(); 
    adRequest.addTestDevice(AdRequest.TEST_EMULATOR); 
    adRequest.addTestDevice("TEST_DEVICE_ID"); 
    adView.loadAd(adRequest); 

私のonDrawメソッドで私は持っています。

canvas.drawColor(Color.GRAY); 
layout.measure(getWidth(), getHeight()); 
layout.layout(0, 0, getWidth(), getHeight()); 
      layout.draw(canvas); 

"Hello World"には広告が表示されますが、広告は表示されません。

答えて

0

「hello world」はテスト用だと思いますか?

adView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));に電話してみましたか?

ビューグループでaddViewを呼び出すと、デフォルトで、子は親のlayoutparamsを継承します。親レイアウトパラメータはwrap_contentであるため、非表示になるようにadviewを縮小している可能性があります。

また、onDrawでlayout.measureを呼び出すことは避けてください。おそらくonMeasureメソッドで行うべきです。あなたはすでにこれを解決していない場合は

+0

前にそれを宣言します。レイアウトの背景色を黒に変更すると、画面全体が黒くなり、スペースがあることがわかります。広告はログ猫でも上がっています。 – richardnixonthethird

0

:Hello WorldのTextViewのを取り除くか、私は運でMatch_ParentとFill_Parentを試してみました

adView.setVisibility(View.VISIBLE);  
layout.addView(adView); 
関連する問題