[iOS] SearchBar (+ RxSwift)를 활용한 커스터마이징
위에 보이는 그림대로 서치바를 커스텀해보자
그런데...! 이전에 Customizing을 해본 기억이 있었는데, 코드로만 작성하려니 또 다른느낌.. 기본적으로 then을 사용함.
👉 UISearchBar는 안에 UITextField를 갖고 있다. (계층 구조)
var searchBar = UISearchBar().then {
$0.placeholder = "검색어를 입력해주세요."
$0.searchBarStyle = .minimal
$0.searchTextField.layer.borderColor = UIColor.green.cgColor
$0.searchTextField.layer.cornerRadius = 20
$0.searchTextField.layer.borderWidth = 1
$0.searchTextField.largeContentImage?.withTintColor(.green) // 왼쪽 돋보기 모양 커스텀
$0.searchTextField.borderStyle = .none // 기본으로 있는 회색배경 없애줌
$0.searchTextField.leftView?.tintColor = .green
}
✅ 그렇다면 RxSwift를 활용하여 키보드의 done(혹은 상황에 따라 return 등) 이벤트는 어떻게 처리할까?
구글에 검색하기 전까지 꽤나 많은 시간을 할애 했는데, 우선 올바른 답부터 함께 보자면
searchBar.searchTextField.rx.controlEvent(.editingDidEndOnExit)
.bind{ [weak self] in
print("done")
}.disposed(by: bag)
이렇게 사용할 수 있습니다:)
텍스트 필드에 controlEvent를 적용해주면 된다..!
'project > Kuring(공지알림)' 카테고리의 다른 글
[iOS] Button 90도 회전시키기 (0) | 2021.12.20 |
---|---|
[iOS] StackView Button 추가하기 (0) | 2021.12.19 |
[iOS] FCM(Firebase Cloud Message) 정리 기본 (0) | 2021.12.17 |
[iOS] UILabel 2줄로 표현하기 (0) | 2021.12.09 |
[iOS] TextView keyboard resignFirstResponder (0) | 2021.12.08 |