【发布时间】:2014-11-13 23:32:05
【问题描述】:
我正在使用带有自定义转换的 iCarousel 插件,并尝试制作特定的淡入淡出效果。 我希望当前项目之前的所有项目都褪色,但当前项目和所有项目都没有褪色。有没有办法使用淡入淡出选项来做到这一点?我试过但没有成功。 所以我尝试在旋转木马的视图上制作动画。 这就是我在这里得到的:
- (void)carouselCurrentItemIndexDidChange:(iCarousel *)carousel
{
UIView *viewToFadeOut = [carousel itemViewAtIndex:self.carousel.currentItemIndex-1];
[UIView animateWithDuration:0.5 delay:0.0 options:0 animations:^{
viewToFadeOut.alpha = 0.6f;
} completion:^(BOOL finished) {
}];
UIView *viewToFadeIn = [carousel itemViewAtIndex:self.carousel.currentItemIndex];
[UIView animateWithDuration:0.5 delay:0.0 options:0 animations:^{
viewToFadeIn.alpha = 1.0f;
} completion:^(BOOL finished) {
}];
}
但它并不能完全按照我的意愿工作,因为一旦当前项目更改,fadeIn 动画就会开始,所以动画开始太晚了。
也许有办法实现类似的方法
- (void)carouselCurrentItemIndexWillChange:(iCarousel *)carousel;
并延迟开始淡出动画?
【问题讨论】:
标签: ios objective-c xcode icarousel