Frage

Ich möchte eine Polygonform füllen, die ich über Core Graphics mit einem linearen CGGradient gezogen haben. Die CGContextDrawLinearGradient Funktion zeichnet einen Gradienten von einem Punkt zum anderen, aber es füllt die gesamte Ansicht. Wie kann ich die Steigung angezeigt werden nur innerhalb der Polygonform ich gezogen habe?

War es hilfreich?

Lösung

Sie können eine CGMutablePath in Ihrer gewünschten Form konstruieren dann verwenden, um die Region, die Sie anzeigen möchten Clip, so etwas wie ...

// Construct yourClipPath

CGContextAddPath(yourContext, yourClipPath);
CGContextClosePath(yourContext);
CGContextClip(yourContext);

// Draw Your Gradient
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top