ในการสร้างภาพที่มีมุมมน หรือสร้างมุมมองหรือปุ่มใดๆ หรือองค์ประกอบ UI ใดๆ ที่มีมุมโค้งมนอย่างรวดเร็ว เราจำเป็นต้องเข้าถึงคุณสมบัติรัศมีมุมของเลเยอร์ ทุกองค์ประกอบ UI ใน iOS ขึ้นอยู่กับเลเยอร์
ก่อนอื่น ให้เพิ่ม UIImageView Object ในกระดานเรื่องราวของเรา หรือสร้างโดยทางโปรแกรม
ด้านล่างนี้เป็นฟังก์ชันที่จะสร้างมุมมองรูปภาพโดยทางโปรแกรมและเพิ่มรูปภาพเข้าไป
func addImage(imageName img: String) { let imageView = UIImageView() imageView.frame = CGRect(x: 10, y: 20, width: 200, height: 200) imageView.contentMode = . scaleAspectFill if let newImage = UIImage(named: img) { imageView.image = newImage } self.view.addSubview(imageView) }
สมมติว่าภาพต้นฉบับที่เราต้องการเพิ่มในแอปพลิเคชันของเราคือ −
ใน viewDidLoad ของเรา ให้เรียกโค้ดด้านล่างเพื่อเพิ่มรูปภาพนี้ในแอปพลิเคชันของเรา
ด้านล่างนี้คือรูปลักษณ์ที่ไม่มีการเปลี่ยนแปลงใดๆ กับคุณสมบัติมุม
ตอนนี้ มาเพิ่มคุณสมบัติรัศมีมุมให้กับโค้ดที่มีอยู่แล้วดูว่ามีลักษณะอย่างไร
imageView.layer.cornerRadius = 10 imageView.clipsToBounds = true
เพิ่มสองบรรทัดนี้ในฟังก์ชัน addImage เหนือเมธอด addSubview เมื่อเราเรียกใช้แอปพลิเคชัน นี่คือลักษณะที่ปรากฏในขณะนี้ −
นอกจากนี้เรายังสามารถสร้างส่วนขยายของ UIImageView และใช้เหมือนกันดังที่แสดงด้านล่างซึ่งให้ผลลัพธ์เหมือนเดิมอีกครั้ง
extension UIImageView { func makeRoundCorners(byRadius rad: CGFloat) { self.layer.cornerRadius = rad self.clipsToBounds = true } }
imageView.makeRoundCorners(byRadius: 20)