환율 강의 테이블뷰에서 데이터 관련 질문있습니다.
안녕하세요 강사님이 말씀해주신대로 tabBarController에있는 viewControllers를 이용해 PickerViewController 인스턴스 myVC를 만들고 PickViewController에 저장된 rates(api정보가 담긴 배열) 을 ListViewController에있는 conData배열에 담는식으로 코드를 작성해봤습니다.class ListViewController: UIViewController { // Data list var conData = [(String,Double)?]() @IBOutlet weak var udsLabel: UILabel! @IBOutlet weak var costTextField: UITextField! @IBOutlet weak var tableView: UITableView! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. self.navigationItem.title = "Currency Converter Table" self.udsLabel.text = "UDS" // table // tableView.delegate = self tableView.dataSource = self // print(tabBarController?.viewControllers![0].topViewController) let myVC = tabBarController?.viewControllers![1] as! PickerViewController // print("m",myVC) conData = myVC.rates! tableView.rowHeight = 100 } }일단 자동완성기능으로 conData = myVC.rates! 이부분은 에러가 나지않는걸 보니 myVC에서 PickerViewController에 관한 타입캐스팅은 성공한걸로 생각하는데 콘솔에찍히는 에러가 (사진)이러한 에러가 나면서 안됩니다.. 강사님이 tabBarController로 VC로 접근하라는말씀이 저는 테이블을 보여줄 VC인 ListViewController에서 tabBarController를 이용해 PickerViewController를 타입캐스팅하고 해당 타입캐스팅된 인스턴스에서의 rates배열의 정보를 테이블뷰에 있는 프로퍼티인 conData에 저장을 시켜서 해서 conData를 이용해서 화면을 구성라는식으로 이해했는데 제가 제대로 이해한게 맞을까요?그리고 viewController공식문서를 보니 navigation Stack을이용해서 하위 컨트롤러에관한 정보를 갖고오는걸로 이해했습니다. 궁금한게 현재 저희가 만든 tabBarController하위의 컨트롤러는 PickerViewController와 ListViewController 2가지가 있는상태인데 스토리보드로 2개의 컨트롤러를만든경우 어떤게 먼저 스택에 쌓이는건가요? 제가 생각했을떄는 맨처음 화면에 나오는게 PickViewController니까 이게 0번이고 그다음 나오는게 ListViewController이기에 이게 1번 스택으로 쌓이는걸로 이해했는데 이게 맞을까요?