-
아주아주 간단한 기능들부터 rxSwift 로 하나씩 해보는 중이다.
UItextView 에는 Placeholder기능이 없다.
그래서 야매로 textView Placeholder기능을 구현해봤다.
일단 textview가 클릭됐을때 아무 입력이 없는 상태에서도 DidBeginEditing이 호출되기때문에(처음알았다)
이 때 textView안의 내용이 placeholder의 내용과 같으면 지워주는 식으로 구현을 했다.
만약 클릭을 했다가 아무 내용도 쓰지 않은 채 다른 곳을 누르면 다시 placeholder가 채워져야 하기 때문에
didEndEditing 으로 구현했다.
코드
func textSetUp(){ textView.rx.didBeginEditing .subscribe(onNext: { [self] in if(textView.text == """ 탈퇴 사유를 남겨주세요. 향후 서비스 개선을 위해 노력하겠습니다. """ ){ textView.text = nil textView.textColor = .gray5 //글자 색도 진한 색으로 바꿔줘야한다! }}).disposed(by: bag) textView.rx.didEndEditing .subscribe(onNext: { [self] in if(textView.text == nil || textView.text == ""){ textView.text = """ 탈퇴 사유를 남겨주세요. 향후 서비스 개선을 위해 노력하겠습니다. """ textView.textColor = .gray3 //다시 placeholder 글자색으로(연한색) }}).disposed(by: bag) }
'iOS' 카테고리의 다른 글
iOS 소셜 로그인 구현 - 카카오톡 로그인 연동 (0) 2022.05.10 [iOS/Swift] 신입 면접 질문 정리 (22.05.04 업데이트) (0) 2022.05.04 [swift] AutoLayout 기초 개념 한번에 정리 (0) 2021.05.10 [swift] 오늘이 포함된 일주일 날짜 불러오기 Date(timeIntervalSinceNow:) (0) 2021.04.02 [swift] tableView 끝에 도달했을때 감지, 무한 스크롤 (0) 2020.08.09