是否可以在预定义区域中包含向左或向右滑动?

时间:2012-03-06 18:34:06

标签: ios5 xcode4.2 uiswipegesturerecognizer

是否可以仅允许在屏幕的某个区域滑动?例如,我有一个倒计时器,为了增加或减少它,我想在时间上向左或向右滑动以增加或减少该值。这可能吗?或者是UISwipGestureRecogniser唯一的屏幕特定?

再次感谢!

-PaulS。

2 个答案:

答案 0 :(得分:0)

您可以尝试使用UISwipeGestureRecognizer检测绑定到特定视图的手势,然后将相应的逻辑附加到其中,例如

 CGPoint point = [recognizer locationOfTouch:0 inView:MyView];

答案 1 :(得分:0)

以下是在预定义的UIView中进行滑动工作的代码。确保为视图和Swip Gestures制作一个IBOutlet:

.h文件

#import <UIKit/UIKit.h>

@interface home_1_ViewController : UIViewController <UIGestureRecognizerDelegate>

//UISwipeGestureRecognizer properties
@property (strong, nonatomic) IBOutlet UISwipeGestureRecognizer *swipeGestureRecognizerRight;
@property (strong, nonatomic) IBOutlet UISwipeGestureRecognizer *swipeGestureRecognizerLeft;

@property (strong, nonatomic) IBOutlet UIView *viewGestureCountDown;

@end

.m文件

- (void)viewDidLoad
{
    [super viewDidLoad];

    UISwipeGestureRecognizer *left = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwipeleft:)];
    [left setDirection:UISwipeGestureRecognizerDirectionLeft];
    [viewGestureCountDown addGestureRecognizer:left];

    UISwipeGestureRecognizer *right = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwiperight:)];    
    [right setDirection:UISwipeGestureRecognizerDirectionRight];
    [viewGestureCountDown addGestureRecognizer:right];
}


- (void)oneFingerSwipeleft:(UISwipeGestureRecognizer *)recognizer 
{ 
    NSLog(@"You swiped Left");
}

- (void)oneFingerSwiperight:(UISwipeGestureRecognizer *)recognizer
{ 
    NSLog(@"You swiped Right");
}

感谢那些帮助提出这个问题的人。效果很好。

-PaulS。