24.08.26 Today I Learned
2024. 8. 26. 18:52
오늘은 RxSwift로 코딩을 시작했다. 처음 써보는거라 어색한 부분도 많은데 기능을 추가하고 액션을 넣을 때 코드가 좀 더 간결해지는 것을 느꼈다.
UIKit에서 UI와 로직을 연결하는 코드들을 바인딩해서 한군데서 처리하는게 좋았다.
그 부분의 코드를 보면
// MARK: - Setup Bindings
private func setupBindings() {
let tapProfile = UITapGestureRecognizer()
profileImageView.isUserInteractionEnabled = true
profileImageView.addGestureRecognizer(tapProfile)
tapProfile.rx.event.bind(onNext: { [weak self] _ in
print("프로필 이미지 클릭")
}).disposed(by: disposeBag)
let tapPuppy = UITapGestureRecognizer()
puppyImageView.isUserInteractionEnabled = true
puppyImageView.addGestureRecognizer(tapPuppy)
tapPuppy.rx.event.bind(onNext: { [weak self] _ in
print("강아지 이미지 클릭")
}).disposed(by: disposeBag)
addButton.rx.tap.bind { [weak self] in
self?.addNewContainerView()
}.disposed(by: disposeBag)
}
각각의 버튼 혹은 이미지를 누를 때 어떠한 액션이 나오는지를 setupBindings로 묶어서 처리했다. 여기에는 프로필이미지 누를때, 강아지 이미지 누를때, UIButton을 누를때 이렇게 3가지 액션이 있는데 이렇게 쉽게 정리가 되니까 RxSwift의 편의성을 느꼈다.
'Today I Learned > 2024' 카테고리의 다른 글
2024.09.03 Today I Learned (1) | 2024.09.03 |
---|---|
24.09.02 Today I Learned (0) | 2024.09.02 |
24.08.23 Today I Learned (0) | 2024.08.25 |
24.08.20 Today I Learned (0) | 2024.08.20 |
24.08.19 Today I Learned (0) | 2024.08.19 |