在杂志中滑动UIViews

时间:2013-01-06 15:28:08

标签: ios uiview slide

我想知道这里有人知道如何在我的应用程序中滑动视图。当我在视野中时,我想滑到另一个视图,就像在“杂志”中一样。 (见图)

希望有人可以帮助我。

图片:

enter image description here http://bildr.no/view/1361377

2 个答案:

答案 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)。