Xcode ViewControllerから別ストーリーボードにあるTabViewControllerへの画面遷移をコードでしたい
XcodeでiPhoneアプリを作成しております。
Main.storyboard上にあるViewControllerにあるボタンを押下した際に、Index.storyboard上にあるTabView Contollerへコードで画面遷移をさせたいです。
こちらがMain.storyboard上にあるViewControllerです。
Custom ClassのClassは「ViewController」、storyboardIDは「Login」です。
画面遷移させるボタンのClass名は「Loginbutton」です。
こちらがIndex.storyboard上にあるTabView Contollerです。
Custom Classのクラスは「TabViewController」、storyboardIDは「show」です。
ViewControllerから、このTabViewControllerに画面遷移することで、初期表示されているタブ左側の画面のViewCpontroller「Item1」を表示したいです。
こちらが表示したい画面の、「Item1」というClass名を付けたViewControllerです。
TabViewControllerに画面遷移することでItem1が表示されると考えたため、
StoryboardIDは付けていません。
文末に載せたサイトを参考に、ViewController.swiftに以下のコードを書きましたが、シュミレーターで表示した際にボタンを押下すると、アプリがクラッシュしてしまいました。
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func Loginbutton(_ sender: Any) {
let storyboard: UIStoryboard = UIStoryboard(name: "Index", bundle: nil)
let nextView = storyboard.instantiateViewController(withIdentifier: "show") as! TabViewController
self.present(nextView, animated: true, completion: nil)
}
}
コード9行目を以下のように書き換えてデバッグを行うと、nilが返されます。
let nextView = storyboard.instantiateViewController(withIdentifier: "show") as? TabViewController
TabViewController.swiftには以下の記述をしています。
import UIKit
class TabViewController: UITableView {
}
このようなエラーを起こさずに、画面遷移を行うにはどういった修正を加えればよろしいでしょうか。
ご教授いただけますよう、お願いいたします。
[参考にしたサイト]
https://qiita.com/Simmon/items/6c3d6bcd6bfffbfd970d
https://capibara1969.com/684/
https://yuu.1000quu.com/screen_transition_in_swift