티스토리 뷰

안녕하세요 :]

 

오늘 정리할 내용은 UITextField의 Text에 left padding 값을 주는 거예요.

보통 UITextField의 값을 입력할 때면

너무 왼쪽에 딱 붙어서 경계선과 글자의 구분이 애매하죠.

그래서 왼쪽에 약간의 공간을 주게 되는데

기본적으로 그런 기능을 제공하고 있지 않죠..

 

간단하게 UITextField를 Extension 해서 함수를 하나 만들어 줄게요.

먼저 코드를 보겠습니다.

 

extension UITextField {
func addLeftPadding() {
let paddingView = UIView(frame: CGRect(x: 0, y: 0, width: 10, height: self.frame.height))
self.leftView = paddingView
self.leftViewMode = ViewMode.always
}
}

 

addLeftPadding()이라는 함수를 만들어 줬어요.

paddingView를 하나 생성해 주시고

그 넓이는 10, 높이는 TextField 자체의 height로 줬습니다.

 

여기서 넓이가 left padding으로 들어가게 될 거예요.

 

다음 textField의 leftView에 paddingView를 넣어줍니다.

그리고 textField의 leftViewMode를 always로 해줄게요.

 

leftViewMode가 무엇이냐..?

 

 

그냥 textField 자체에 왼쪽 뷰가 존재하는데

그 뷰가 기본적으로는 보이지 않는 모드로 되어 있어요.

그래서 우리는 leftView를 항상 나타내서 padding 효과를 내는 거죠.

 

그리고 이제 textField를 생성한 뒤,

 

예로 들면

let emailTextField = UITextField()

emailTextField.addLeftPadding()

이 코드 한 줄만 추가해 주면 끝!!

 

그러면!!

Email을 작성하는 TextField의 시작이 완전 왼쪽이 아닌

패딩이 들어간 곳부터 시작하는 것을 보실 수 있습니다.

 

댓글