そこで、UITableViewの上部にiAdユニットを追加します。画面外で広告ユニットを作成し、想定どおりにアニメーション化しています。
広告が表示されたら、テーブルのフレームとcontentOffsetを同じ速度で同時にアニメーション化して、テーブルが静止しているように見せたいのですが、実際には広告の高さだけ縮小し、コンテンツを上にスライドさせます。同時に。
両方を一緒にアニメーション化すると、それらは異なる速度で発生するように見え、広告が表示されるとすべてがひどくジャンプします。
[UIView animateWithDuration:0.05 delay:0 options:UIViewAnimationOptionCurveEaseInOut
animations:^{
[self.table setFrame: CGRectMake(tableFrame.origin.x,tableFrame.origin.y+50,tableFrame.size.width,tableFrame.size.height-[self getBannerHeight])];
[self.table setContentOffset:CGPointMake(self.table.contentOffset.x,self.table.contentOffset.y+50) animated:NO];
[self.adBannerView setFrame:CGRectMake(0,0,self.adBannerView.frame.size.width,self.adBannerView.frame.size.height)];
}
completion:nil];
フレームだけをアニメートすると、セルが移動します。これはimoを吸います。UIの混乱をできるだけ少なくしたいのですが。
回避策はありますか?