2017-10-27 9 views
0

대리자를 이해하려고하는데 이해할 수없는 식별자 '데이터'가 사용 된 이유가 표시되지 않습니다.대리자를 통해 전달 된 데이터에 액세스 할 수 없습니다.

//This is my sendingVC 

import UIKit 

protocol TextFieldDelegate { 
func userEnteredText(text: String) 
} 

class ViewController: UIViewController { 


@IBOutlet weak var textField: UITextField! 

var delegate: TextFieldDelegate? = nil 

override func viewDidLoad() { 
    super.viewDidLoad() 
} 


@IBAction func sendButton(_ sender: AnyObject) { 
    if delegate != nil { 
     if textField.text != nil { 
      let data = textField.text 
      delegate?.userEnteredText(text: data!) 
     } 
    } 
} 

} 

문제는 그 대리인에 의해 전달되어야 데이터 변수를 accesss 할 수없는 나는 내 receivingVC 아래이 코드입니다.

//This is my receivingVC 
import UIKit 

class SecondViewController: UIViewController, TextFieldDelegate { 

@IBOutlet weak var label: UILabel! 
override func viewDidLoad() { 
    super.viewDidLoad() 

} 

func userEnteredText(text: String) { 
    label.text = data // Use of unresolved identifier 'data' 
} 

override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 
    if segue.identifier == "sendSegue" { 
     let destVC: ViewController = segue.destination as! ViewController 
     destVC.delegate = self 
    } 
} 

} 
+5

해당 함수의 입력이 '텍스트'가 아닌'data' 호출 될 것이라고 말했다했습니다 때문입니다. 'data'는 다른 함수의 이름입니다. –

+0

그건 내 문제를 해결. 도와 줘서 고마워. – Rvfvl

답변

0

업데이트 코드는 :

func userEnteredText(text: String) { 
    label.text = text 
}