[swift] 데이터와 레이아웃 바인딩하기

이번 글에서는 Swift 언어에서 데이터와 레이아웃을 바인딩하는 방법에 대해 알아보겠습니다.

데이터 모델 생성하기

우선 데이터를 표현하는 모델을 생성해야 합니다. 예를 들어, 사용자 정보를 표현하는 User 모델을 만들어 보겠습니다.

struct User {
    let name: String
    let age: Int
}

위 코드에서는 사용자의 이름과 나이를 나타내는 User 구조체를 정의했습니다.

뷰 모델 생성하기

다음으로 화면에 표시할 데이터를 준비하는 뷰 모델을 생성합니다.

class UserViewModel {
    var user: User

    init(user: User) {
        self.user = user
    }

    func getUserName() -> String {
        return user.name
    }

    func getUserAge() -> String {
        return "\(user.age)"
    }
}

위 코드에서는 User 모델에 대한 뷰 모델을 만들어, 이름과 나이 정보를 가져오는 메서드를 정의했습니다.

데이터와 레이아웃 바인딩하기

마지막으로 뷰 컨트롤러에서 뷰 모델을 생성하고, 데이터와 레이아웃을 바인딩하여 화면에 표시합니다.

class UserProfileViewController: UIViewController {
    @IBOutlet weak var nameLabel: UILabel!
    @IBOutlet weak var ageLabel: UILabel!

    var userViewModel: UserViewModel!

    override func viewDidLoad() {
        super.viewDidLoad()
        userViewModel = UserViewModel(user: User(name: "John", age: 30))
        nameLabel.text = userViewModel.getUserName()
        ageLabel.text = userViewModel.getUserAge()
    }
}

위 코드에서는 사용자의 이름과 나이를 표시할 Label을 IBOutlet으로 연결하고, UserViewModel을 생성하여 nameLabel과 ageLabel에 해당 정보를 바인딩했습니다.

이제 데이터와 레이아웃을 바인딩하여 화면에 사용자 정보를 표시하는 방법에 대해 알아보았습니다. 뷰 모델을 통해 데이터를 준비하고, 뷰 컨트롤러에서 해당 데이터를 화면에 바인딩하여 사용자 경험을 향상시킬 수 있습니다.

참고 문서