@@ -14,7 +14,7 @@ @implementation FlingGestureHandler
1414- (instancetype )initWithTag : (NSNumber *)tag
1515{
1616 if ((self = [super initWithTag: tag])) {
17- self. direction = UISwipeGestureRecognizerDirectionLeft | UISwipeGestureRecognizerDirectionRight | UISwipeGestureRecognizerDirectionUp | UISwipeGestureRecognizerDirectionDown;
17+ _direction = UISwipeGestureRecognizerDirectionLeft | UISwipeGestureRecognizerDirectionRight | UISwipeGestureRecognizerDirectionUp | UISwipeGestureRecognizerDirectionDown;
1818 _recognizer = [[UISwipeGestureRecognizer alloc ] initWithTarget: self action: @selector (handleGesture: )];
1919 [(UISwipeGestureRecognizer*)_recognizer setDirection: UISwipeGestureRecognizerDirectionLeft];
2020 _rightrecognizer = [[UISwipeGestureRecognizer alloc ] initWithTarget: self action: @selector (handleGesture: )];
@@ -34,17 +34,17 @@ - (void)configure:(NSDictionary *)config
3434
3535 id prop = config[@" direction" ];
3636 if (prop != nil ) {
37- self. direction = [prop integerValue ];
38- if ((self. direction & UISwipeGestureRecognizerDirectionLeft) == 0 ) {
37+ _direction = [prop integerValue ];
38+ if ((_direction & UISwipeGestureRecognizerDirectionLeft) == 0 ) {
3939 _recognizer.enabled = NO ;
4040 }
41- if ((self. direction & UISwipeGestureRecognizerDirectionRight) == 0 ) {
41+ if ((_direction & UISwipeGestureRecognizerDirectionRight) == 0 ) {
4242 _rightrecognizer.enabled = NO ;
4343 }
44- if ((self. direction & UISwipeGestureRecognizerDirectionUp) == 0 ) {
44+ if ((_direction & UISwipeGestureRecognizerDirectionUp) == 0 ) {
4545 _toprecognizer.enabled = NO ;
4646 }
47- if ((self. direction & UISwipeGestureRecognizerDirectionDown) == 0 ) {
47+ if ((_direction & UISwipeGestureRecognizerDirectionDown) == 0 ) {
4848 _bottomrecognizer.enabled = NO ;
4949 }
5050 }
@@ -90,7 +90,11 @@ - (void)unbindFromView
9090 _bottomrecognizer.delegate = nil ;
9191}
9292- (void ) setDirection : (NSInteger ) value {
93- ((UISwipeGestureRecognizer *)_recognizer).direction = value;
93+ _direction = value;
94+ _recognizer.enabled = (_direction & UISwipeGestureRecognizerDirectionLeft) != 0 ;
95+ _rightrecognizer.enabled = (_direction & UISwipeGestureRecognizerDirectionRight) != 0 ;
96+ _toprecognizer.enabled = (_direction & UISwipeGestureRecognizerDirectionUp) != 0 ;
97+ _bottomrecognizer.enabled = (_direction & UISwipeGestureRecognizerDirectionDown) != 0 ;
9498}
9599//
96100// - (NSNumber *) direction {
@@ -128,4 +132,3 @@ - (NSMutableDictionary *)eventExtraData:(UISwipeGestureRecognizer *)recognizer
128132 return result;
129133}
130134@end
131-
0 commit comments