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 回答