본문 바로가기
TIL(Today I Learned)

2024.05.27 Today I Learned

by 승환파크 2024. 5. 27.

오늘은 swift 에서 화면 이동 간에 데이터를 전송하는 법에 대해 알아보았다. 우선 화면 전환은 Segue로 전환을 진행하였고 데이터는 간단하게 String 을 옮겨 화면에 띄워보았다.

 

1. 화면 이동을 위한 세그 설정하기

우선 화면을 이동하기 위해서는 세그를 만들어 주어야 한다. StoryBoard 에서 메인 화면을 클릭한 후 아래 사진처럼 버튼을 누른 후 Navigation Controller 를 선택해준다.

 

그러면 Navigation Controller 가 생성되면서 메인 화면과 이어진 모습을 확인할 수 있다.

 

그런 다음 이동할 화면과 메인 화면에서 세그를 연결해준다. 간단하게 이동할 버튼 혹은 화면에서 control 을 누른채로 클릭하고 이동을 할 페이지에 드래그를 하면 설정이 된다.

 

이후 옆의 사진 처럼 segue 에 Identifier 를 지정해주어야 한다.

 

 

 

 

 

 

 

 

 

 

 

사진처럼 설정했다면 데이터를 전송받을 뷰 컨트롤러에 데이터를 저장할 변수를 생성해야 한다.

class SecondViewController: UIViewController {
    var receivedData: String? // 데이터를 저장할 변수
}

 

위 코드처럼 준비를 해놨다면 그 다음으로 첫 번째 뷰 컨트롤러에 코드를 추가해야 한다.

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "<세그웨이 식별자 이름>" { 
        if let destinationVC = segue.destination as? SecondViewController {
            destinationVC.receivedData = "전송할 데이터" 
        }
    }
}

 

그런 다음 세그웨이를 실행할 메서드를 생성하면 된다.

func someEventTriggered() {
    performSegue(withIdentifier: "<위에서 지정한 세그 식별자>", sender: self)
}

 

위 처럼 모두 작성을 완료했다면 실제로 코드를 실행시킨 후 화면에 넘어온 데이터를 보여주면 된다!

'TIL(Today I Learned)' 카테고리의 다른 글

2024.05.31 Today I Learned  (0) 2024.05.31
2024.05.29 Today I Learned  (0) 2024.05.28
2024.05.24 Today I Learned  (0) 2024.05.24
2024.05.23 Today I Learned  (0) 2024.05.23
2024.05.17 Today I Learned  (0) 2024.05.17