0

1 画面に 2 つのバナーを表示しようとしましたが、1 つのバナーしか表示されません。バナー 1 が読み込まれて表示されますが、バナー 2 が読み込まれると表示され、バナー 1 は空になります。私のコードでは、2 つのバナーの両方を表示できません。手伝って頂けますか。

私のコード:

@BindingAdapter({"bind:initAds"})
public static void initAds(FrameLayout view, MainData data) {
    if (data.getAds() > 0) {
        AdsUtil.addBannerAds(view, data);
    } else {
        view.setVisibility(View.GONE);
    }

    //AdsUtil.addBannerAds(view, data);
}

public static void addBannerAds(final FrameLayout bannerWrapper, final MainData data)
{
    Activity mActivity = IxuApplication.getInstance().getCurrentActivity();
    BannerAdView bannerAdView = new BannerAdView(mActivity);
    HeyzapAds.setNetworkCallbackListener(new HeyzapAds.NetworkCallbackListener() {
        @Override
        public void onNetworkCallback(String network, String event) {
            Log.e("tungtung",network + " " + event);
        }

    });
    HeyzapAds.BannerOptions bannerOptions = bannerAdView.getBannerOptions();
    bannerOptions.setFacebookBannerSize(HeyzapAds.CreativeSize.BANNER);
    bannerOptions.setAdmobBannerSize(HeyzapAds.CreativeSize.BANNER);
    bannerOptions.setGenericBannerSize(HeyzapAds.CreativeSize.BANNER);
    if(bannerWrapper.getChildCount()>0)
        bannerWrapper.removeAllViews();
    bannerWrapper.addView(bannerAdView);
    bannerAdView.setBannerListener(new HeyzapAds.BannerListener() {
        @Override
        public void onAdError(BannerAdView bannerAdView, HeyzapAds.BannerError bannerError) {

        }

        @Override
        public void onAdLoaded(BannerAdView bannerAdView) {
            if(data.getEnable()!=2)
                data.setShowLineForAds(1);
            bannerWrapper.setVisibility(View.VISIBLE);
        }

        @Override
        public void onAdClicked(BannerAdView bannerAdView) {

        }
    });
    bannerAdView.load();
}
4

1 に答える 1

0

新しい 10.x 統合 SDK を使用している場合、複数の同時バナー配置はサポートされなくなりました。これは新しい SDK の制限であり、現在、最善の解決策を検討しています。

9.x SDK を使用している場合は、いくつかの注意点があります。

広告配信の信頼性を高めるために、バナーの表示を自分で変更せず、バナーのライフサイクル全体を通してビューをそのままにしておくことをViewお勧めします。BannerAdViewVISIBLE

次の注意点は、次のコードは、 を呼び出したときに既存のバナーを破棄していることですaddBannerAds

if(bannerWrapper.getChildCount() > 0)
    bannerWrapper.removeAllViews();

このコードを実装から削除するとbannerWrapper、一度に複数のバナーを追加して、できれば複数のバナーを表示できるはずです。

于 2016-10-06T18:36:43.250 に答える