Quartz 2D aktualisieren

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Quartz 2D aktualisieren

    Hallo,
    ich habe eine Frage zur folgenden Ausgangssituation:
    Habe eine View (Unterklasse von UIView), welche eine Art Tachometer (aus mehreren Layern zusammen gesetzt) anzeigt.

    Jetzt möchte ich gerne den aktuellen Wert auch als Text anzeigen, ohne jedoch CATextLayer (bzw. Funktionen > ios 3.1) zu verwenden.
    Habe die Darstellung mittels Quartz 2D (bietet die meisten Optionen) hinbekommen, leider weis ich nicht so recht wie ich jetzt die Daten aktualisieren kann...

    Das ganze sieht in etwa so aus:

    CGContextRef *context = UIGraphicsGetCurrentContext();
    CGContextSaveGState(context);
    CGContextSetFillColorWithColor(context, [UIColor greenColor].CGColor);
    CGContextSelectFont(context, "Helvetica", 30, kCGEncodingMacRoman);
    CGContextSetTextDrawingMode(context, kCGTextFill);
    CGContextShowText(context, [[NSString stringWithFormat:@"%.2f", score] UTF8String], strlen([[NSString stringWithFormat:@"%.2f", score] UTF8String]));
    CGContextRestoreGState(context);

    Wenn ich es mittels setNeedsDisplay mache, werden alle Layer mit jeder aktualisierung noch einmal gezeichnet.
    Was wäre jetzt eine gute Lösung? Die Layer vorher immer "leeren" oder komm ich irgendwie an das Textobjekt heran?