So erstellen Sie eine CGGradient für meine UIView-Unterklasse?
Weiß jemand, wie man erstellen Sie eine CGGradient füllen, die meine Ansicht
mein Aktueller code ist und es füllt den UIView mit einem roten Rechteck ich will eine gradient (von schwarz zu Grau zum Beispiel) anstelle der rect :
- (void)drawRect:(CGRect)rect {
CGContextRef context=UIGraphicsGetCurrentContext();
CGRect r;
r.origin.x=0.;
r.origin.y=0.;
r.size.width=rect.size.width;
r.size.height=rect.size.height;
CGContextSetRGBFillColor(context, 1., 0., 0., 1.);
CGContextFillRect (context,r);
}
Schnelle tangential-Tipp: Ihr rect-setup-code wird wesentlich übersichtlicher, wenn Sie CGRectMake.
Oder ein C99-Stil-Initialisierer.
Vielen Dank für die Ideen, die ich verwenden werde CGRectMake scheint es nett zu mir =)... C99-Stil-Initialisierer ist schön, aber nicht genug Kakao für mich 😛
Oder ein C99-Stil-Initialisierer.
CGRect r = { .origin = CGZeroRect, .size = rect.size };
Vielen Dank für die Ideen, die ich verwenden werde CGRectMake scheint es nett zu mir =)... C99-Stil-Initialisierer ist schön, aber nicht genug Kakao für mich 😛
InformationsquelleAutor Fantattitude | 2009-07-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
In meine Antwort zu diese Frage, ich code für das zeichnen einer Glanz-Verlauf innerhalb einer UIView. Die Farben und Zeichnung-Positionen können geändert werden, um form auch immer-linear-gradient müssen Sie.
InformationsquelleAutor Brad Larson
dies ist eine Unterklasse, wo Sie können wählen, die Farben
.h-Datei
.m-Datei
InformationsquelleAutor sebastian friedrich
Verwenden CGGradientCreateWithColorComponents oder CGGradientCreateWithColors um den Verlauf zu erzeugen. (Letzteres dauert CGColor Objekte.) Verwenden Sie dann CGContextDrawLinearGradient oder CGContextDrawRadialGradient, um es zu zeichnen.
Einen linearen Verlauf verlängern unendlich in mindestens zwei Richtungen senkrecht zu der Linie der Verlauf. Einen radialen Farbverlauf erstreckt sich unendlich in alle Richtungen. Um zu verhindern, dass der gradient von verschütten außerhalb Ihrer Sicht, werden Sie wahrscheinlich brauchen, um hinzuzufügen, die Ansicht, die Grenzen zu den clipping-Pfad mit CGContextClipToRect.
InformationsquelleAutor Peter Hosey