SwiftでviewControllerをインスタンス化して表示する 質問する

SwiftでviewControllerをインスタンス化して表示する 質問する

問題

を調べ始めたのですが、どういうわけか、特定の からのSwift Programming Languageの初期化を正しく入力することができません。UIViewControllerUIStoryboard

では、Objective-C私は単純にこう書きます:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"StoryboardName" bundle:nil];
UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"ViewControllerID"];
[self presentViewController:viewController animated:YES completion:nil];

Swift でこれを実現する方法について誰か教えてくれませんか?

ベストアンサー1

この回答は、Swift 5.4 および iOS 14.5 SDK 用に最後に改訂されました。


これはすべて、新しい構文とわずかに改訂された API の問題です。UIKit の基本的な機能は変更されていません。これは、iOS SDK フレームワークの大部分に当てはまります。

let storyboard = UIStoryboard(name: "myStoryboardName", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "myVCID")
self.present(vc, animated: true)

必ずmyVCIDストーリーボード内の「ストーリーボード ID」に設定してください。

おすすめ記事