2011-09-15 62 views
1

iPhone开发中的事件是将代码写入幻灯片左侧并向右滑动操作。iPhone视图滑动效果 - 初学者

就像在您滑动手机视图时一样,您可以进入另一个视图。什么是我应该写我的代码的事件?

+1

如果您不知道要搜索什么,该怎么办? – Shyta

+0

虽然你这样做。你提到了一个幻灯片操作。如果你不知道要搜索什么,那么你可能没有足够的信息来在这里提出一个明确定义的问题。尝试寻找更通用的东西。事实上,我只是意识到你实际上在问什么。无论如何,我会发布一个答案。 – darvids0n

+1

做一个搜索的想法有些讽刺:当我使用术语“transitionFromView slide”进行搜索时,这个页面是我最喜欢的一个搜索引擎。 – Jeff

回答

1

您正在寻找的事件被称为swipe。 Apple提供了一个UISwipeGestureRecognizer类来处理这个问题。实施建议可以在iOS事件处理指南的Gesture Recognizers部分找到。

简单地说,在创建识别器:

UISwipeGestureRecognizer *swipeGestureRecognizer = 
[[[UISwipeGestureRecognizer alloc] 
    initWithTarget:self action:@selector(swipe:)] autorelease]; 

然后设置刷卡多少手指是什么方向,它需要是:

swipeGestureRecognizer.numberOfTouchesRequired = 2; // default is 1 
// allow swiping either left or right, default is right only 
swipeGestureRecognizer.direction = UISwipeGestureRecognizerDirectionLeft | 
            UISwipeGestureRecognizerDirectionRight; 

然后将其添加到您的视图:

[self.view addGestureRecognizer:swipeGestureRecognizer]; 

当用户滑动时,您的swipe:方法将被调用。

2

Darvids0n覆盖了一个手势将视图滑出。我解释这个问题作为一个动画视图滑出,在这种情况下,你会想要的UIView的transitionFromView:toView:duration:options:completion:类方法:

[UIView transitionFromView:view1 toView:view2 duration:1.0 options:(UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionTransitionFlipFromLeft) completion:NULL]; 

这实际上给你一个卷曲。如果您想要幻灯片,则必须编写自定义动画。查看UIView的documentation,特别是'animateWithDuration:animations:'类的方法。

+1

+1动画也是我最初的想法(请参阅问题的评论),但我读到了“当您滑动手机视图,进入另一个视图”,并将其作为滑动手指并触发手势识别器然后执行幻灯片动画以进入另一个视图。所以我认为我们都是对的,实际上:) – darvids0n

+0

然后,Shyta也可能意味着有一个手势识别器,它可以识别一个锅并遵循手指。平移/滑动组合?情节变浓... – FeifanZ