我正在尝试使用翻译动画创建一个弹出横幅(基本上是一个广泛的自定义视图弹出和隐藏在屏幕上)。这是我到目前为止的代码:
- (void)popAddProductBanner {
[self.view bringSubviewToFront:[self.view.subviews objectAtIndex:3]];
[_addProductBanner setHidden:YES];
UIView *bannerView = [[[NSBundle mainBundle] loadNibNamed:@"HouraAddProductBannerView" owner:self options:nil] objectAtIndex:0];
[_addProductBanner addSubview:bannerView];
[UIView transitionWithView:_addProductBanner duration:0.5 options:UIViewAnimationOptionCurveEaseIn animations: ^{
[_addProductBanner setHidden:NO];
[_addProductBanner setTransform:CGAffineTransformMakeTranslation(0.0, -44.0)];
} completion:^(BOOL finished) {
[NSTimer scheduledTimerWithTimeInterval:3.0
target:self
selector:@selector(dismissAddProductBanner)
userInfo:nil
repeats:NO];
}];
}
-(void)dismissAddProductBanner {
[UIView transitionWithView:_addProductBanner duration:0.5 options:UIViewAnimationOptionCurveEaseIn animations: ^{
[_addProductBanner setTransform:CGAffineTransformMakeTranslation(0.0, 44.0)];
[_addProductBanner setHidden:YES];
} completion:nil];
}
可以通过不同的按钮在整个应用程序中触发此弹出窗口。我的问题是弹出动画效果很好,但隐藏动画(相同但以另一种方式)不起作用。横幅只是消失,没有任何动画。
有人知道这里发生了什么吗?这对我真的很有帮助。谢谢。