iOS (기능)
[SWIFT] UIImageView를 원 형(Circle) 만들기
겸손할 겸
2018. 2. 26. 13:39
[코드]
cell.userImageView.layer.cornerRadius = cell.userImageView.frame.height/2 cell.userImageView.layer.borderWidth = 1 cell.userImageView.layer.borderColor = UIColor.clear.cgColor // 뷰의 경계에 맞춰준다 cell.userImageView.clipsToBounds = true
ImageView.layer에 있는 속성 값들을 변경한다. clipsToBounds는 이전에 지정한 뷰의 경계선에 이미지를 맞출 것인지에 대한 Bool 값이다.
[참고]
이미지 뷰의 layer에는 maskToBounds라는 Bool로 Set하는 함수가 있다.
이 함수를 True로하게 되면, 이 후에 이 이미지에 들어가는 서브 컴포넌트들은 부모를 따라간다는 것이다.
예를 들어, 위의 코드에서 cornerRadius로 모서리 값을 준 이미지뷰에 addSubView로 뷰 하나를 이미지 뷰 밑에 넣는다 가정하면, 추가된 뷰는 하단에서 모서리를 갖고 있지 않고 네모 정사각형을 갖게 된다. 부모 이미지뷰가 모서리 값을 갖고 있는데도 불구하고 말이다.
이때, 부모 뷰에서 cornerRadius에서 값을 할당한 후에 layer.maskToBounds = true를 해준 뒤에 addSubView를하게 되면, 이후 추가된 뷰도 부모 뷰의 모서리 모양을 따라 들어가게 된다.