funcloadBannerAd(){bannerView.adUnitID="ca-app-pub-3940256099942544/8388050270"bannerView.rootViewController=selfletviewWidth=FRAME_WIDTHbannerView.adSize=currentOrientationAnchoredAdaptiveBanner(width:viewWidth)letrequest=AdManagerRequest// Create an extra parameter that aligns the bottom of the expanded ad to// the bottom of the bannerView.letextras=Extras()extras.additionalParameters=["collapsible":"bottom"]request.register(extras)bannerView.load(request)}
Objective-C
-(void)loadBannerAd{self.bannerView.adUnitID=@"ca-app-pub-3940256099942544/8388050270";CGFloatviewWidth=FRAME_WIDTH;self.bannerView.adSize=GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(viewWidth);GADRequest*request=[GADRequestrequest];// Create an extra parameter that aligns the bottom of the expanded ad to the// bottom of the bannerView.GADExtras*extras=[[GADExtrasalloc]init];extras.additionalParameters=@{@"collapsible":@"bottom"};[requestregisterAdNetworkExtras:extras];
[self.bannerViewloadRequest:request];}
廣告重新整理行為
如果在 Ad Manager 網頁介面中,設定自動重新整理應用程式內的橫幅廣告,當某個橫幅廣告版位請求到可收合橫幅廣告,後續更新將不再請求這類廣告,因為每次更新都重新展開廣告,可能對使用者體驗造成負面影響。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-09-02 (世界標準時間)。"],[[["\u003cp\u003eCollapsible banner ads start as larger overlays and can be collapsed to a standard banner size, improving performance for smaller anchored ads.\u003c/p\u003e\n"],["\u003cp\u003eTo implement, define the banner view's collapsed size and include an extras parameter in the ad request specifying the placement (\u003ccode\u003etop\u003c/code\u003e or \u003ccode\u003ebottom\u003c/code\u003e).\u003c/p\u003e\n"],["\u003cp\u003eWhile auto-refresh is enabled, subsequent refreshes after a collapsible banner won't request another collapsible banner to avoid impacting user experience.\u003c/p\u003e\n"],["\u003cp\u003eYou can verify if a loaded ad is collapsible by calling \u003ccode\u003eisCollapsible\u003c/code\u003e on the banner view.\u003c/p\u003e\n"],["\u003cp\u003eDuring the beta period, collapsible banner ads are only supported for Google demand and not for ads served through mediation.\u003c/p\u003e\n"]]],[],null,["Select platform: [Android](/ad-manager/mobile-ads-sdk/android/banner/collapsible \"View this page for the Android platform docs.\") [iOS](/ad-manager/mobile-ads-sdk/ios/banner/collapsible \"View this page for the iOS platform docs.\") [Unity](/ad-manager/mobile-ads-sdk/unity/banner/collapsible \"View this page for the Unity platform docs.\") [Flutter](/ad-manager/mobile-ads-sdk/flutter/banner/collapsible \"View this page for the Flutter platform docs.\")\n\n\u003cbr /\u003e\n\nCollapsible banner ads are banner ads that are initially presented as a larger\noverlay, with a button to collapse them to the originally requested banner size.\nCollapsible banner ads are intended to improve performance of anchored ads that\nare otherwise a smaller size. This guide shows how to turn on collapsible banner\nads for existing banner placements.\n\nPrerequisites\n\n- Complete the [banner ads get started guide](/ad-manager/mobile-ads-sdk/ios/banner).\n\nImplementation\n\nMake sure your banner view is defined with the size you would like users to see\nin the regular (collapsed) banner state. Include an extras parameter in the ad\nrequest with `collapsible` as the key and the placement of the ad as the value.\n\nThe collapsible placement defines how the expanded region anchors to the banner\nad.\n\n| `Placement` value | Behavior | Intended use case |\n|-------------------|-------------------------------------------------------------------------|-----------------------------------------------|\n| `top` | The top of the expanded ad aligns to the top of the collapsed ad. | The ad is placed at the top of the screen. |\n| `bottom` | The bottom of the expanded ad aligns to the bottom of the collapsed ad. | The ad is placed at the bottom of the screen. |\n\nIf the loaded ad is a collapsible banner, the banner shows the collapsible\noverlay immediately once it's placed in the view hierarchy.\n\nSwift \n\n func loadBannerAd() {\n bannerView.adUnitID = \"ca-app-pub-3940256099942544/8388050270\"\n bannerView.rootViewController = self\n let viewWidth = FRAME_WIDTH\n bannerView.adSize = currentOrientationAnchoredAdaptiveBanner(width: viewWidth)\n\n let request = AdManagerRequest\n\n // Create an extra parameter that aligns the bottom of the expanded ad to\n // the bottom of the bannerView.\n let extras = Extras()\n extras.additionalParameters = \\[\"collapsible\" : \"bottom\"\\]\n request.register(extras)\n\n bannerView.load(request)\n }\n\nObjective-C \n\n - (void)loadBannerAd {\n self.bannerView.adUnitID = @\"ca-app-pub-3940256099942544/8388050270\";\n CGFloat viewWidth = FRAME_WIDTH;\n self.bannerView.adSize = GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(viewWidth);\n\n GADRequest *request = [GADRequest request];\n\n // Create an extra parameter that aligns the bottom of the expanded ad to the\n // bottom of the bannerView.\n GADExtras \\*extras = \\[\\[GADExtras alloc\\] init\\];\n extras.additionalParameters = @{@\"collapsible\" : @\"bottom\"};\n \\[request registerAdNetworkExtras:extras\\];\n\n [self.bannerView loadRequest:request];\n }\n\n\u003cbr /\u003e\n\nAds refreshing behavior\n\nFor apps that configure auto-refresh for banner ads in the\nAd Manager web interface, when a collapsible banner ad\nis requested for a banner slot, subsequent ad refreshes won't request\ncollapsible banner ads. This is because showing a collapsible banner on every\nrefresh could have a negative impact on user experience.\n\nIf you want to load another collapsible banner ad later in the session, you can\nload an ad manually with a request containing the collapsible parameter.\n\nCheck if a loaded ad is collapsible\n\nNon-collapsible banner ads are eligible to return for collapsible banner\nrequests to maximize performance. Call `isCollapsible` to check if the last\nbanner loaded is collapsible. If the request fails to load and the previous\nbanner is collapsible, the API returns true. \n\nSwift \n\n func bannerViewDidReceiveAd(_ bannerView: BannerView) {\n print(\"The last loaded banner is \\(bannerView.isCollapsible ? \"\" : \"not\") collapsible.\")\n }\n\nObjective-C \n\n - (void)bannerViewDidReceiveAd:(GADBannerView *)bannerView {\n NSLog(@\"The last loaded banner is %@collapsible.\", (bannerView.isCollapsible ? @\"\" : @\"not \"));\n }\n\n\u003cbr /\u003e\n\nMediation\n\nCollapsible banner ads are only available for Google demand. Ads served through\nmediation show as normal, non-collapsible banner ads."]]