2017-09-27 1 views
1

Comment puis-je ajouter un remplissage entre un UIImageView et sa bordure?Ajout de remplissage et de bordure à un UIImageView

Img.layer.cornerRadius = Img.bounds.width/2 
    Img.layer.borderWidth = 2 
    Img.layer.borderColor = UIColor.blue.cgColor 
    Img.clipsToBounds = true 

Comme ceci:

enter image description here

+0

S'il vous plaît vérifier https://stackoverflow.com/questions/20021478/add-transparent-space-around -a-uiimage –

Répondre

0

Selon le this link

class ViewController: UIViewController { 
    override func viewDidLoad() { 
     super.viewDidLoad() 
     let image = UIImage(named: "imagename")! 
     let imageView = UIImageView(image: image.imageWithInsets(insets: UIEdgeInsetsMake(30, 30, 30, 30))) 
     imageView.frame = CGRect(x: 0, y: 0, width: 300, height: 400) 
     imageView.backgroundColor = UIColor.gray 
     imageView.layer.borderWidth = 2 
     imageView.layer.borderColor = UIColor.blue.cgColor 
     view.addSubview(imageView) 
    } 
} 
extension UIImage { 
    func imageWithInsets(insets: UIEdgeInsets) -> UIImage? { 
     UIGraphicsBeginImageContextWithOptions(
      CGSize(width: self.size.width + insets.left + insets.right, 
        height: self.size.height + insets.top + insets.bottom), false, self.scale) 
     let _ = UIGraphicsGetCurrentContext() 
     let origin = CGPoint(x: insets.left, y: insets.top) 
     self.draw(at: origin) 
     let imageWithInsets = UIGraphicsGetImageFromCurrentImageContext() 
     UIGraphicsEndImageContext() 
     return imageWithInsets 
    } 
} 
+0

Quelle est la "vue" dans view.addSubview (imageView) censé être? Cela me jette une erreur. Ai-je besoin d'ajouter un UIView à l'image? – ILoveToCode22

+0

C'est juste la vue dans ViewController. –