2016-09-14 2 views

답변

0

prepareforsegue 방법으로 텍스트 필드 나 다른 콘센트에 값을 설정하거나 액세스 할 수 없습니다. 그것은 prepareforsegue 메서드가 "before"라고 불리기 때문에 대상 컨트롤러의 콘센트가 설정됩니다. 따라서 텍스트 필드의 값을받는 대상 컨트롤러에서 변수를 만들고 대상 컨트롤러의 viewDidLoad에서 텍스트 필드를 설정해야합니다.

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if let destinationViewController = segue.destinationViewController as? SecondViewController { 
     destinationViewController.valueForTextField = "Hi" 
    } 
} 

대상 컨트롤러 (제 경우 SecondViewController이다) :

@IBOutlet weak var textField: UITextField! 
var valueForTextField: String? 
override func viewDidLoad() { 
    super.viewDidLoad() 
    textField.text = valueForTextField 
} 
prepareforsegue 방법에

0

코드를 게시하는 데 도움이됩니다. prepareForSegue 내부

, 사용하여 텍스트 필드를 보유하고있는 대상의 ViewController를 잡아 :

let vc = segue.destinationViewController

다음 다른 텍스트 필드에 대한 vc.textField1.text = "Your Text here" &를 반복합니다.

관련 문제