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

BELATED ARTICLES

more