2015-01-02 4 views
0

두 개의보기 컨트롤러가 있는데 첫 번째보기에서 두 번째보기로 데이터를 전달하고 싶습니다. 취소 버튼을 누르면 데이터가 전달되지 않고 두 번째보기로 이동합니다.Swift에서보기간에 데이터를 전달하는 방법

my storyboard

내가 당신의 제출이 코드는

+1

"는 작동하지 않았다"는 의미가 없다. 어떻게 된 거예요? 질문이 뭐야? – matt

+0

확인 단추를 누를 때 아무 것도 얻지 못했습니다. –

답변

1

이에서 당신의 prepareForSegue() 메소드를 가지고 작동하지 않았다

@IBAction func submitL() { 
    // MARK: - Navigation 

    // In a storyboard-based application, you will often want to do a little preparation before navigation 
    func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
     // Get the new view controller using segue.destinationViewController. 
     // Pass the selected object to the new view controller. 
     var third = segue.destinationViewController as ViewController 
     third.lastName = theLastName.text 
     third.name = theName.text 
    } 



} 

이 코드를 작성 기능. "performSegueWithIdentifier"를 찾아 보면이 모든 것이 어떻게 작동하는지 보게 될 것입니다.

self.performSegueWithIdentifier("nameOfYourSegue", sender: self) 

Sending data with Segue with Swift

+0

확인 단추가 작동하지만이 메시지가 나타납니다. "2015-01-02 21 : 07 : 42.364 테스트 [676 : 18062] 경고 : <테스트를 표시하려고합니다. ViewController : 0x7fcad1652070> on 보기가 창 계층 구조에 없습니다! " 또한 취소 버튼을 누르면 첫 번째보기의 이전 데이터가 사라집니다. –

+0

이것을 수행 할 수있는 방법은 여러 가지가 있으며 선택하는 방법은 개인 취향입니다. 본질적으로 단순히 버튼 클릭에 대한 액션을 실행하는 것입니다.이 액션은 prepareForSegue 함수에서 참조를 가져 오는 viewController에 해당 textField의 문자열 값을 보내거나 보내지 않습니다. 2 가지 액션, 1 액션을 보낸 사람, CoreData에 저장 한 다음 해당 값을 viewWillAppear에 가져 오는 행위 등. 이것은 다양한 방법으로 태클 될 수 있습니다. 자습서 나 Apple Docs를 통해 일반적인 방법을 마스터하면 훨씬 더 명확 해집니다. 참조를 얻고 객체를 전달하십시오. –

+0

고맙습니다. –

관련 문제