我想知道这里有人知道如何在我的应用程序中滑动视图。当我在视野中时,我想滑到另一个视图,就像在“杂志”中一样。 (见图)
希望有人可以帮助我。图片:
答案 0 :(得分:1)
据我所知,没有“罐头”过渡可以滑过。我已经实现了这样:
-(void)SlideInController:(RDSlideController *) next {
next.presentingVC = self;
next.view.frame = CGRectMake(self.view.frame.origin.x + 320, self.view.frame.origin.y, self.view.frame.size.width, self.view.frame.size.height);
[self.view.window addSubview:next.view];
[UIView animateWithDuration:slideTime animations:^{
next.view.frame = self.view.frame;
} completion:^(BOOL finished) {
self.view.window.rootViewController = next;
}];
}
-(void)SlideOut {
RDSlideController *prev = self.presentingVC;
prev.view.frame = self.view.frame;
[self.view.window insertSubview:prev.view belowSubview:self.view];
[UIView animateWithDuration:slideTime animations:^{
self.view.frame = CGRectMake(self.view.frame.origin.x + 320, self.view.frame.origin.y, self.view.frame.size.width, self.view.frame.size.height);
} completion:^(BOOL finished) {
self.view.window.rootViewController = prev;
}];
}
在这个例子中,我创建了一个控制器类(RDSlideController),它是我的其他控制器的超类,因此它们都具有presentationVC属性并可以访问各种幻灯片进出(以及向上和向下)方法我写。这应该可以让您了解如何执行此操作。
答案 1 :(得分:0)
查看UIPageViewController
这是doc的link。从iOS5开始,它支持页面卷曲过渡。在iOS6中,他们在屏幕截图中添加了幻灯片。
如果您需要支持早期版本,则很可能需要创建自己的动画(使用CAAnimation
)。