我希望在我的广告显示在底部的同时动画我的UIView容器的大小.当广告准备就绪时,我会从屏幕底部向上滑动广告.我希望我的UIView容器减少与广告滑动时相同的大小.
我在其嵌入的顶级UIViewController中为我的容器视图创建了一个outlet属性.
我的广告动画代码:
- (void)adViewDidReceiveAd:(GADBannerView *)view
{
NSLog(@"Received Ad");
[UIView animateWithDuration:1.0 animations:^ {
view.frame = CGRectMake(0.0,
self.view.frame.size.height - view.frame.size.height,
view.frame.size.width,
view.frame.size.height);
// This is where I think I would need to animate the container view.
}];
}
如何减小容器视图的大小以匹配广告的大小?我需要容器留在同一个地方和所有东西,但是需要从底部取下一些高度.
最佳答案 这很简单:只需在动画横幅视图的同一块中为您的容器框架制作动画即可.它将是这样的:
[UIView animateWithDuration:1.0 animations:^ {
view.frame = CGRectMake(0.0,
self.view.frame.size.height - view.frame.size.height,
view.frame.size.width,
view.frame.size.height);
self.containerView.frame = CGRectMake( self.containerView.frame.origin.x,
self.containerView.frame.origin.y,
self.containerView.frame.size.width,
self.containerView.frame.size.height - view.frame.size.height);
}];
这段代码会将您的containerView减少为横幅的同一高度.您可以根据需要更改/改编.
编辑:如果您正在使用自动布局,则应为约束创建IBOutlet并为其设置动画,而不是框架本身.