2017-01-09 2 views
0

다른 질문과 달리 대상보기 컨트롤러가 바로 이어 버리지 않습니다. 대신 A -> B -> C -> D -> E다른 ViewController에 데이터를 전달하는 방법?

A, B, C 및 D의 데이터가 E로 전달됩니다. 연결되지 않은보기 컨트롤러의 데이터는 어떻게 전달합니까? 누구에 의해 Segues에 의해?

+0

마치 A에서 E로 데이터를 전달해야한다면 B를 전달하고 그 다음 C를 전달하는 등 – Fonix

+0

이 방법은 제가 사용하는 방법입니다. 우리는 유지할 수 없게 될 수 있습니다. –

답변

3

모델보기 컨트롤러 접근 방법 : A, B, C 및 D에서 오는 데이터를 저장하는 모델 객체를 만들어 다음보기 컨트롤러로 분리합니다. 세그 (segues) 체인의 끝에서 모델에는 네 개의 모든 컨트롤러의 데이터가 포함됩니다.

E에 도달하면 해당 데이터가 모델 개체에 저장됩니다. 그것은 전시를 위해 모형에서 그것을 가지고 갈 수있다.

1

MVC 패턴을 따를 수 있습니다. 모델 클래스를 만들고 뷰 컨트롤러에서 뷰 컨트롤러로 데이터를 저장합니다. 즉, 서로 다른 뷰 컨트롤러의 서로 다른 데이터로 모델 개체를 채 웁니다. 그런 다음 데이터를 가져와야 할 때 해당 모델 클래스 만 사용하십시오. 싱글 톤 패턴을 사용할 수 있습니다.

또 다른 방법은 다른보기 컨트롤러에서 하나의보기 컨트롤러에 대한 참조를 만들 수 있다는 것입니다. 그런 다음 포함 된보기 컨트롤러에서 참조 된 해당보기 컨트롤러의 속성에 액세스 할 수 있습니다. 이것은 계속됩니다.

관련 문제