0

adMob が表示されたときにすべてのレイアウトを適応させるために、その高さを取得しようとしていますが成功しません。高さは常に = 0 です! それに到達する方法は?ありがとうございました。

 /** Called when an ad is received. */
      @Override
      public void onReceiveAd(Ad ad) 
      {  
        adView.setVisibility(View.VISIBLE);

        final android.view.ViewTreeObserver obs = adView.getViewTreeObserver();

        obs.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
            @Override
            public boolean onPreDraw () {

                int height = adView.getHeight();

                return true;
           }
        });
4

1 に答える 1

1

adView.getHeight() の呼び出しが早すぎると、関数が 0 を返すことがありますが、これはまったく正常なことであり、広告の表示に時間がかかるためです。

AdListener を実装してからオーバーライドすると、

    public void onFailedToReceiveAd(Ad arg0, ErrorCode arg1);
    public void onReceiveAd(Ad arg0);

関数、およびその関数内で問題なく広告の高さを取得する必要があります

于 2012-05-07T11:36:08.583 に答える