警告:类'CardController'没有实现'UIGestureRecognizerDelegate'协议

时间:2010-12-02 07:52:16

标签: iphone iphone-sdk-3.0

在我的应用中,我正在尝试检测滑动手势以导航到下一页...

请在下面找到我的以下代码

UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeRightAction:)];
swipeRight.direction = UISwipeGestureRecognizerDirectionRight;
swipeRight.delegate = self;
[cardsGridView addGestureRecognizer:swipeRight];

当我运行我的应用程序时,我收到以下警告......

warning: class 'MyGesture' does not implement the 'UIGestureRecognizerDelegate' protocol

请帮助我解决我在这里失踪的问题。

UPDATE1:任何人都可以给我看一个工作代码来检测滑动....

1 个答案:

答案 0 :(得分:4)

UIGestureRecognizerDelegate协议仅定义可选方法。现在有两种方法可以摆脱警告:

  1. 如果您不需要任何这些可选的委托方法,请不要设置委托。当您在初始化程序中指定目标和选择器时,您的swipeRightAction方法调用仍然有效。
  2. 如果需要设置委托,请在委托类的头文件中指明该类通过在超类名后面的尖括号中指定它来实现协议:

    @interface YourClass : UIViewController <UIGestureRecognizerDelegate> { ... }

  3. 编辑:谢谢,我忘了逃避尖括号。