title: I would like a "drawing popover" appearing by clicking in a tableviewcell?
body: <p>I would like to have a popover with a signature "drawing" when I click in a tableviewcell.
  <strong>Like this picture :</strong>
  <a href="https://i.stack.imgur.com/ue4FQ.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/ue4FQ.png" alt="enter image description here"></a></p>
  
  <p><strong>So here is my code :</strong></p>
  
  <pre><code>- (void)didSelectWithTableView:(UITableView *)tableView controller:(UIViewController *)controller
  {
      red = 0.0/255.0;
      green = 0.0/255.0;
      blue = 0.0/255.0;
      brush = 2.0;
      opacity = 1.0;
  
      viewController = [[UIViewController alloc] init];
  
      mainImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, viewController.view.frame.size.width, viewController.view.frame.size.height)];
      mainImage.backgroundColor = [UIColor whiteColor];
      tempDrawImage = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, viewController.view.frame.size.width, viewController.view.frame.size.height)];
      tempDrawImage.backgroundColor = [UIColor whiteColor];
      [viewController.view addSubview:mainImage];
      [mainImage setContentMode:UIViewContentModeScaleToFill];
      [viewController.view addSubview:tempDrawImage];
      [tempDrawImage setContentMode:UIViewContentModeScaleToFill];
  
      UIButton *saveBtn = [UIButton buttonWithType:UIButtonTypeCustom];
      [saveBtn addTarget:self
                  action:@selector(save)
        forControlEvents:UIControlEventTouchUpInside];
      [saveBtn setTitle:@"Save" forState:UIControlStateNormal];
      [saveBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
      NSLog(@"frame : %@", viewController.view);
      saveBtn.frame = CGRectMake(viewController.view.frame.origin.x + 570, viewController.view.frame.origin.y + 20, 60.0, 80.0);
      [viewController.view addSubview:saveBtn];
  
      UIButton *cancelBtn = [UIButton buttonWithType:UIButtonTypeCustom];
      [cancelBtn addTarget:self
                    action:@selector(reset)
          forControlEvents:UIControlEventTouchUpInside];
      [cancelBtn setTitle:@"Reset" forState:UIControlStateNormal];
      [cancelBtn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
      NSLog(@"frame : %@", viewController.view);
      cancelBtn.frame = CGRectMake(viewController.view.frame.origin.x + 20, viewController.view.frame.origin.y + 20, 60.0, 80.0);
      [viewController.view addSubview:cancelBtn];
  
      SignaturePopover = [[UIPopoverController alloc] initWithContentViewController:viewController];
      SignaturePopover.delegate = self;
      SignaturePopover.popoverContentSize = CGSizeMake(644, 425); //your custom size.
  
      [SignaturePopover presentPopoverFromRect:self.contentView.frame inView:self.contentView permittedArrowDirections: UIPopoverArrowDirectionDown | UIPopoverArrowDirectionUp animated:YES];  
  }
  </code></pre>
  
  <p>The problem is that when I click on the tableviewcell, this functions are well called in the TableViewCell, but they are not called when I click in the popover : </p>
  
  <pre><code>    - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
  {
      [super touchesBegan:touches withEvent:event];
  
      [self.nextResponder touchesBegan:touches withEvent:event];
      NSLog(@"viewController : %@", self.class);
      if (![self.class isSubclassOfClass: [FXFormSignatureCell class]])
      {
          mouseSwiped = NO;
          UITouch *touch = [touches anyObject];
          lastPoint = [touch locationInView:viewController.view];
      }
  }
  
  - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
  {
      [super touchesMoved:touches withEvent:event];
  
      [self.nextResponder touchesMoved:touches withEvent:event];
          mouseSwiped = YES;
          UITouch *touch = [touches anyObject];
          CGPoint currentPoint = [touch locationInView:viewController.view];
  
          UIGraphicsBeginImageContext(viewController.view.frame.size);
          [self.tempDrawImage.image drawInRect:CGRectMake(0, 0, viewController.view.frame.size.width, viewController.view.frame.size.height)];
          CGContextMoveToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);
          CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), currentPoint.x, currentPoint.y);
          CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
          CGContextSetLineWidth(UIGraphicsGetCurrentContext(), brush );
          CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), red, green, blue, 1.0);
          CGContextSetBlendMode(UIGraphicsGetCurrentContext(),kCGBlendModeNormal);
  
          CGContextStrokePath(UIGraphicsGetCurrentContext());
          self.tempDrawImage.image = UIGraphicsGetImageFromCurrentImageContext();
          [self.tempDrawImage setAlpha:opacity];
          UIGraphicsEndImageContext();
  
          lastPoint = currentPoint;
     // }
  }
  
  - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
  {
      [super touchesEnded:touches withEvent:event];
  
      [self.nextResponder touchesEnded:touches withEvent:event];
          if(!mouseSwiped)
          {
              UIGraphicsBeginImageContext(viewController.view.frame.size);
              [self.tempDrawImage.image drawInRect:CGRectMake(0, 0, viewController.view.frame.size.width, viewController.view.frame.size.height)];
              CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
              CGContextSetLineWidth(UIGraphicsGetCurrentContext(), brush);
              CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), red, green, blue, opacity);
              CGContextMoveToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);
              CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), lastPoint.x, lastPoint.y);
              CGContextStrokePath(UIGraphicsGetCurrentContext());
              CGContextFlush(UIGraphicsGetCurrentContext());
              self.tempDrawImage.image = UIGraphicsGetImageFromCurrentImageContext();
              UIGraphicsEndImageContext();
          }
  
          UIGraphicsBeginImageContext(self.mainImage.frame.size);
          [self.mainImage.image drawInRect:CGRectMake(0, 0, viewController.view.frame.size.width, viewController.view.frame.size.height) blendMode:kCGBlendModeNormal alpha:1.0];
          [self.tempDrawImage.image drawInRect:CGRectMake(0, 0, viewController.view.frame.size.width, viewController.view.frame.size.height) blendMode:kCGBlendModeNormal alpha:opacity];
          self.mainImage.image = UIGraphicsGetImageFromCurrentImageContext();
          self.tempDrawImage.image = nil;
          UIGraphicsEndImageContext();
          NSLog(@"mainimage : %@, tempimage : %@", mainImage, tempDrawImage);
  }
  </code></pre>
  
  <p><strong>Question : How can I have the touchesBegan, touchesMoved and touchesEnded called in the popover subView? Thanks in advance :D</strong></p>