Ich versuche, einen gestrichelten Rahmen mit CALayer auf einem UIImageView hinzuzufügen. Ich habe eine Methode gefunden, aber funktioniert das in Swift und wie kann ich es in Swift konvertieren? o haben Sie eine andere imageView, die einen Rand hat, also wäre die beste Lösung, um CALayer zu verwenden, also sehen sie ähnlich aus? Wie kann ich diesegestrichelter Rahmen UIImageView swift
obj-c-Code zu swift erhalten?
- (CAShapeLayer *) addDashedBorderWithColor: (CGColorRef) color {
CAShapeLayer *shapeLayer = [CAShapeLayer layer];
CGSize frameSize = self.size;
CGRect shapeRect = CGRectMake(0.0f, 0.0f, frameSize.width, frameSize.height);
[shapeLayer setBounds:shapeRect];
[shapeLayer setPosition:CGPointMake(frameSize.width/2,frameSize.height/2)];
[shapeLayer setFillColor:[[UIColor clearColor] CGColor]];
[shapeLayer setStrokeColor:color];
[shapeLayer setLineWidth:5.0f];
[shapeLayer setLineJoin:kCALineJoinRound];
[shapeLayer setLineDashPattern:
[NSArray arrayWithObjects:[NSNumber numberWithInt:10],
[NSNumber numberWithInt:5],
nil]];
UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:shapeRect cornerRadius:15.0];
[shapeLayer setPath:path.CGPath];
return shapeLayer;
}
Danke @jsiodtb für das Hinzufügen dieser Zeile. –
Das funktioniert für mich! Danke –
Arbeitet wunderbar, ich habe es ein bisschen bearbeitet, um es allgemeiner zu machen. Danke vielmals! – n13