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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从左侧(或右侧)滑动UIView的动画事务相关的知识,希望对你有一定的参考价值。

我想用我的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),视图将始终“捕捉”到其边界的多个,因此用户始终位于滚动视图的一个部分或另一个部分(如照片中,或者在主屏幕上)。

您可以将pagingEnabledUIScrollView属性设置为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)

以上是关于从左侧(或右侧)滑动UIView的动画事务的主要内容,如果未能解决你的问题,请参考以下文章

Jquery 动画滑动

将 UIView 滑动到一边,让他消失 - ios

Xamarin iOS - 具有速度的 UIView 动画

如何滑动到右侧的新页面而不是颤动的底部?

Swift3 中的 UIView 动画

使用 NSLayoutConstraints 在 UIView 上简单滑动动画