0

ビュー コントローラーの UIView に FBAdView を追加しました。(私はビューの背景を赤に設定しました) FBAdView は kFBAdSizeHeight50Banner の adSize で作成されました。問題は、FBAdView が追加時に幅を計算するが、デバイスを回転させた後、幅を再計算しないことです。

autolayout を使用してみましたが、うまくいきませんでした

FBAdview を追加するためのコード (赤い背景で UILabel に追加)

FBAdView *fbAdView = [[FBAdView alloc] initWithPlacementID:@"***************_***************" adSize:kFBAdSizeHeight50Banner rootViewController:self]; fbAdView.delegate = self; [fbAdView loadAd]; [self.banner addSubview:fbAdView];

自動レイアウトのコード - 動作しません

// Width constraint, parent view width [self.banner addConstraint:[NSLayoutConstraint constraintWithItem:fbAdView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.banner attribute:NSLayoutAttributeWidth multiplier:1 constant:0]];

// Height constraint, parent view height
[self.banner addConstraint:[NSLayoutConstraint constraintWithItem:fbAdView                                                         attribute:NSLayoutAttributeHeight                                                         relatedBy:NSLayoutRelationEqual                                                      toItem:self.banner
                           attribute:NSLayoutAttributeHeight
                                                     multiplier:1
                                                       constant:0]];

// Center horizontally
[self.banner addConstraint:[NSLayoutConstraint constraintWithItem:fbAdView
                                                      attribute:NSLayoutAttributeCenterX
                                                      relatedBy:NSLayoutRelationEqual
                                                         toItem:self.banner
                                                      attribute:NSLayoutAttributeCenterX
                                                     multiplier:1.0
                                                       constant:0.0]];

// Center vertically
[self.banner addConstraint:[NSLayoutConstraint constraintWithItem:fbAdView
                                                      attribute:NSLayoutAttributeCenterY
                                                      relatedBy:NSLayoutRelationEqual
                                                         toItem:self.banner
                                                      attribute:NSLayoutAttributeCenterY
                                                     multiplier:1.0
                                                       constant:0.0]];

バナーが追加されたときに画面を印刷すると、回転後に画面の幅に収まり、幅が変わりません(親の赤いビューのように)

回転後のバナー

4

1 に答える 1