2016-07-09 3 views
1

값과 같은 데이터를 두 번째보기 컨트롤러에서 첫 번째보기 컨트롤러로 전달하는 방법을 알고 싶습니다. 나는 첫 번째부터 두 번째까지 간단한 segue를했다. 나는 그것을 어떻게 거꾸로 할 지 모른다.두 번째보기의 데이터를 첫 번째보기 컨트롤러로 전달

내 첫 번째 컨트롤러에 대한보기와 두 번째보기에 대한보기가 있습니다. 내가 만든 사용자 지정 뒤로 단추를 클릭하면 두 번째보기의 변경 내용을 첫 번째 컨트롤러의보기로 전달하려고합니다. 어떻게해야합니까?

나는 긴장을 푸는 것과 관련이 있다는 것을 알고 있지만, 내가 바라 보는 모든 것은 매우 불분명하고 혼란 스럽다.

+0

http://stackoverflow.com/a/9736559/1271826에서 "전달 데이터"를 참조하십시오. 또는 거기에 다른 답변을 참조하십시오. – Rob

답변

0

역순으로 수행하려면 댓글에 링크 된 @Rob과 비슷한 delegate 또는 blocks을 입력하면됩니다.

언급 한 것과 같이 긴장을 풀 수도 있습니다. 단순한 segue처럼, unwind segue는 두 번째보기 컨트롤러의 데이터를 prepareForSegue의 첫 번째보기 컨트롤러로 전달하는 데 도움이 될 수 있습니다.

예를 들면 ViewControllerA이고 그 범위는 ViewControllerB입니다. 이번에는 unwind segue를 ViewControllerB에서 ViewControllerA으로 설정하고 싶습니다. 스토리 보드에 설정하기 전에 ViewControllerAUIViewControllerViewControllerB이 아닌 길이를 설정하고 싶은 경우 @IBAction을 설정해야합니다. 이런 식으로 뭔가 : 스토리 보드에서

@IBAction func cancelToViewControllerA(segue:UIStoryboardSegue) { 
} 

ViewControllerB 제어에서는 exit에 언 와인드 SEGUE를 호출하고 cancelToViewControllerA을 선택합니다 button을 끕니다. 그런 다음 긴장을 풀기위한 이름을 지정하십시오. ViewControllerB에서 prepareForSegue은 데이터를 전달하여 unwind segue에 대한 데이터를 설정 한 것과 같습니다.

+0

마지막 문장에서 "ViewControllerB에서 unwind segue에 대한 데이터를 설정하기 위해 데이터를 전달하는 것과 같이 prepareForSegue를 재정의하십시오."라고 말합니다. 그 부분을 조금 더 설명 할 수 있을까요? 앞으로 전달 된 방식과 비슷하게 데이터를 다시 전달하기 위해 prepareForSegue 루틴을 재정의하는 방법은 무엇입니까? – lopezdp