Sto tentando di aggiungere un bordo tratteggiato utilizzando CALayer su UIImageView. ho trovato un metodo, ma è che funziona in modo rapido e come posso convertirlo in rapido? o avere un altro imageView che ha un bordo, quindi sarebbe la soluzione migliore per usare CALayer, quindi hanno un aspetto simile? Come posso ottenere questobordo tratteggiato UIImageView swift
codice obj-c per swift?
- (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;
}
Grazie a @jsiodtb per l'aggiunta di quella linea. –
Questo lavoro per me! Grazie –
Funziona magnificamente, l'ho modificato un po 'per renderlo più generale. Molte grazie! – n13