我想用我的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从左(或右)动画进行幻灯片?如果没有,我该怎么办?
除了另一个答案,你可以find a cool tutorial here,并在教程结束时有一个项目的链接,所以你可以看看它。
这是一个自动幻灯片放映,但您可以通过注释定义NSTimer
的行来禁用它。另外你应该在viewDidLoad
中使用下一行来获得更好的用户体验:
scr.pagingEnabled = YES;
希望能帮助到你
我认为您所追求的是一个滚动视图,其中启用了分页功能,主视图包含每张照片的子视图。启用分页(此布尔属性的默认值为NO
),视图将始终“捕捉”到其边界的多个,因此用户始终位于滚动视图的一个部分或另一个部分(如照片中,或者在主屏幕上)。
您可以将pagingEnabled
的UIScrollView
属性设置为true以获得此效果。然后,您将始终拥有一次显示的UIScrollView
的边界的倍数(您可以填充照片的视图,例如UIImageView
)。
在您的滑动处理程序中,为您的视图编写以下代码:
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)