从左侧(或右侧)滑动UIView的动画事务

时间:2012-05-14 18:57:59

标签: objective-c ios5 uiview uiviewanimation

我想通过我的UIView从左(或右)动画做幻灯片,就像你在Photos.app中完成一样,同时通过向左和向右滑动来浏览照片。

我知道以下基本动画事务代码。

[UIView beginAnimations:@"ThisAnimation" context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
[UIView setAnimationDuration:1];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];    

[UIView commitAnimations];

是否可以使用setAnimationTransaction从左(或右)动画进行幻灯片?如果没有,我该怎么办?

3 个答案:

答案 0 :(得分:1)

我认为您所追求的是一个滚动视图,其中启用了分页功能,该主视图包含每张照片的子视图。启用分页(此布尔属性的默认值为NO),视图将始终“捕捉”到其边界的多个,因此用户始终位于滚动视图的一个部分或另一个部分(如在照片中,或在主屏幕上。)

您可以将pagingEnabled的{​​{1}}属性设置为true以获得此效果。然后,您将始终拥有一次显示的UIScrollView的边界的倍数(您可以使用照片的视图填充,例如UIScrollView)。

答案 1 :(得分:1)

除了另一个答案之外,您可以find a cool tutorial here并在教程结尾处有一个指向该项目的链接,以便您查看它。

这是一个自动幻灯片显示,但您可以通过注释定义NSTimer的行来禁用它。此外,您应该在viewDidLoad中使用下一行以获得更好的用户体验:

scr.pagingEnabled = YES;

希望有所帮助

答案 2 :(得分:0)

在滑动处理程序中,为您的视图编写以下代码:

let transition = CATransition()
transition.type = CATransitionType.push

transition.subtype = CATransitionSubtype.fromRight //In Left  swipe method

transition.subtype = CATransitionSubtype.fromLeft //In Right  swipe method

self.view.layer.add(transition, forKey: nil)