0

我有一个自定义 UIView,它是另一个类的委托,它不断向它发送消息(更新 UILabel 的文本)。这个自定义视图也有一个 UIScrollView 作为子视图。问题是,当我平移/捏住滚动视图时,没有收到任何委托消息(仅在交互完成后)。

我怎样才能让它一直接收消息?


这是其他类向其委托发送消息的方式:

   [NSTimer scheduledTimerWithTimeInterval:1.0
                                    target:self
                                  selector:@selector(onTick:)
                                  userInfo:nil
                                   repeats:YES];


   - (void)onTick:(NSTimer *)timer {
       NSString *label = ...

       if ([delegate respondsToSelector:@selector(updateLabelText:)]) {
           [delegate updateLabelText:label];
           [delegate updateLabelText:label];
       }

       ...

   }
4

2 回答 2

0

将 UIPanGestureRecognizer/UIPinchGestureRecognizer 添加到您的 UIScrollView 并监听委托方法:

Regulating Gesture Recognition
– gestureRecognizerShouldBegin:
– gestureRecognizer:shouldReceiveTouch:
Controlling Simultaneous Gesture Recognition
– gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:
于 2012-08-28T08:44:33.710 回答
0

使用[[NSRunLoop currentRunLoop] addTimer:timer forMode:UITrackingRunLoopMode];可以解决问题。谢谢@Jens Kilian!

于 2012-08-28T08:52:05.543 回答