Ich möchte Etikett in ein Bild, das ein rotes Rechteck mit Eckenradius ist (unter der Bedingung, dass die Bildgröße gleich oder etwas höher als die Bezeichnung eins sein muss). Dafür habe ich eine ähnliche question gefunden. Getestet habe ich diese:Swift: Machen Sie ein Bild im Hintergrund des Etiketts
theLabel.backgroundColor = UIColor(patternImage: UIImage(named: "blah")!)
Aber ich habe Probleme mit der Bildgröße. So testete ich die zweite Antwort:
UILabel *myLabel=[[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 20)];
UIImage *img = [UIImage imageNamed:@"a.png"];
CGSize imgSize = myLabel.frame.size;
UIGraphicsBeginImageContext(imgSize);
[img drawInRect:CGRectMake(0,0,imgSize.width,imgSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
myLabel.backgroundColor = [UIColor colorWithPatternImage:newImage];
die letzte Version von Xcode (Xcode 8.0) mit den CGRectMake
nicht verfügbar ist.
Kann mir bitte jemand helfen?
Warum gehst du nicht einfach verwenden '' UIImageView' und UILabel' mit der gleiche Rahmen? – alexburtnik
Wie wäre es mit dem Erstellen der UIImageView zuerst und legen Sie das gewünschte Bild darauf. Fügen Sie dann das Label als Unteransicht hinzu. – Windindi
wegen der Größe UIImageView. Mein Bild ist manchmal größer als der darin enthaltene Text. –