1

私は、タッチ/ジェスチャイベントをtopViewからbottomViewに送信するためにあらゆる種類の可能性を試してきました。私はOpenFrameworksGLViewを使用しています。1つのクラスからサブクラスにデータを送信できますが、RMMapViewはジェスチャーイベントとタッチイベントをオーバーライドしません。タッチ/ジェスチャとHittestを使用してみましたが、それらすべてでマップビューを制御できません。ここで、パンイベントを転送しようとしました。

EAGLView.h https://github.com/openframeworks/openFrameworks/blob/master/addons/ofxiPhone/src/EAGLView.h レイヤークラスで行ったこと:

            UIPanGestureRecognizer *panGestureRecognizer = [[[UIPanGestureRecognizer alloc]        initWithTarget:self action:@selector(handlePanGesture:)] autorelease];
            panGestureRecognizer.minimumNumberOfTouches = 1;
            panGestureRecognizer.maximumNumberOfTouches = 1;
            [self addGestureRecognizer:panGestureRecognizer];


 - (void)handlePanGesture:(UIPanGestureRecognizer *)recognizer
            {
        NSLog(@"EAGLEVIEW Pan");

        for (UIView *view in [ofxiPhoneGetUIWindow() subviews])
        {
            if([view isKindOfClass:[RMMapView class]])
            {
                [view  handlePanGesture:recognizer];

               // [view panGestureRecognizer delegate self];
               //  [self addGestureRecognizer:recognizer];
            }


        }

    }

https://github.com/route-me/route-me/blob/master/MapView/Map/RMMapView.m RMMapviewのサブクラス:

    if (self) {
    UIPanGestureRecognizer *panGestureRecognizer = [[[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePanGesture:)] autorelease];
    [panGestureRecognizer setDelegate:self];
    panGestureRecognizer.minimumNumberOfTouches = 1;
    panGestureRecognizer.maximumNumberOfTouches = 1;
  NSLog(@"hallo123 %@",self);
    [self addGestureRecognizer:panGestureRecognizer];

- (void)handlePanGesture:(UIPanGestureRecognizer *)recognizer
    {
NSLog(@"pan");
 [recognizer setDelegate:self];
[super handlePanGesture:recognizer];
    }
4

0 に答える 0