Comment puis-je utiliser les Graphiques de Base pour dessiner un cercle à mon touch emplacement?

Nouveau programmeur ici. Je vais avoir des problèmes en essayant d'utiliser des Graphiques de Base pour dessiner une caresse arc de cercle autour de mon touch emplacement. J'ai la méthode pour tracer le cercle fonctionne très bien, et je l'ai testé et je suis l'enregistrement des touches quand j'appuie sur l'écran, mais quand j'essaie d'appeler la méthode pour tracer le cercle quand je me tape, j'obtiens l'erreur "CGContextBlahBlah: contexte non valide 0x0"

Je pense que c'est parce que je ne suis pas à l'appel de la méthode drawRect:().

Alors, comment suis-je en mesure d'appeler cette méthode sur une touche? En outre, comment puis-je utiliser le "CGPoint locationOfTouch" comme paramètre dans ma méthode de tirage?

Voici le code de morceaux que je travaille avec.

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *touch = [touches anyObject];
    CGPoint locationOfTouch = [touch locationInView:self];
    [self drawTouchCircle:(locationOfTouch)];
    [self setNeedsDisplay];
}


-(void)drawTouchCircle:(CGPoint)locationOfTouch
{
    CGContextRef ctx= UIGraphicsGetCurrentContext();

    CGContextSaveGState(ctx);

    CGContextSetLineWidth(ctx,5);
    CGContextSetRGBStrokeColor(ctx,0.8,0.8,0.8,1.0);
    CGContextAddArc(ctx,locationOfTouch.x,locationOfTouch.y,30,0.0,M_PI*2,YES);
    CGContextStrokePath(ctx);
}

Merci d'avance pour l'aide!

Rob dit, votre suspicion est correct — dans iOS tout le dessin est de tirer plutôt que de pousser.

OriginalL'auteur BendE | 2013-02-16