현재 동일한 ViewController.h 및 ViewController.m 파일을보고있는 3 개의보기 컨트롤러간에 UITextField의 텍스트를 전달하려고 다음 코드를 사용하고 있습니다.Xcode : 스토리 보드 탭 응용 프로그램 데이터 전달하기
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"NameOfSegue"]) {
ViewController *ibcVC = segue destinationViewController;
ibcVC.myTextField = self.myTextField;
}
}
다음과 같은 순서로 연결된 뷰 컨트롤러가 있습니다. ViewC1 => ViewC2 => ViewC3.
내 UITextField는 ViewC2에 있습니다.
내가 ViewC3에 넣습니다 예를 들어 ViewC2에 버튼을 클릭
, 그것은 ViewC3에 잘 데이터를 전달합니다. 그러나 내가 현재 ViewC2에 있다고 가정하고, UITextView에 뭔가를 입력 한 다음 Xcode가 탭 응용 프로그램으로 작업 할 때 자동으로 넣는 탐색의 뒤로 단추를 클릭하면 ViewC1으로 이동합니다. 예상대로 괜찮아. 그러나 내가 밀어 넣는 ViewC1의 버튼을 ViewC2으로 누르면 UITextField에 입력 한 데이터/텍스트가 지워지거나 null로 재설정됩니다.데이터 EX 올바르게 밀어 :
그래서, 기본적으로 현재 시각 약간 디지털를 사용하는 문제이다. WE가 NAVIGATION EX ON '뒤로'버튼을 누르면
ViewC1 => ViewC2 => ViewC3
데이터는 소거된다.
는 ViewC1 < = ViewC2
viewc1로 돌아가려면 어떤 방법을 사용하고 있습니까? dismissmodalviewcontroller? – Pochi
하나를 사용할 필요가 없습니다. Xcode는 탭 응용 프로그램을 사용하고 뷰 컨트롤러와 푸시 세그를 연결할 때 탐색에서 뒤로 버튼을 자동으로 만듭니다. 그 부분에 대해 Storyboard를 사용하고 있기 때문에 모든 것이 IB에서 수행되고 푸싱 등을 처리 할 때 프로그래밍이 필요하지 않습니다. 그렇지만 Xcode가 그 부분으로 무엇을하고 있는지 알면 아마 그것을 알아낼 수 있습니다. – John