5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

StoryBoardの代わりにxibで画面を実装する

Posted at

StoryBoardの代わりにxibで画面を実装する

いつも忘れてしまうので備忘録としてメモしておきます。

手順

  • AppDelegateにrootViewControllerを設定
  • StoryBoardを削除
  • plistの編集
  • xibファイルの作成・設定

AppDelegateにrootViewControllerを設定

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        self.window = UIWindow(frame: UIScreen.main.bounds)
        self.window?.rootViewController = UINavigationController(rootViewController: ViewController())
        self.window?.makeKeyAndVisible()
        return true
    }

StoryBoardを削除

Main.storyboardを右クリックし、「Delete」を選択します。
「Move To Trash」を選ばないと完全に削除されないので注意です。

plistの編集

info.plistを開きます。
「Main storyboard file base name」がMainになってるので、そこを空にします。
スクリーンショット 2019-05-05 11.22.04.png

xibファイルの作成・設定

storyboardの代わりにViewとなるxibファイルを作ります。

xibファイルの作成

  • 「⌘ + N」
  • 「View」を選択して「Next」
  • 名前を入力して「create」

xibファイルを使うための設定

  • xibのFile's Ownerを選択
  • Custom Classの「Class」にそのxibを適用させるViewContoller名を入力
  • スクリーンショット 2019-05-05 11.30.07.png
  • File's OwnerのOutletsからxibのViewとOutletsのViewを接続
スクリーンショット 2019-05-05 11.37.03.png

Viewを選択してReferencing Outletsを見てみると、ViewとFile's Ownerが接続されていることがわかります。
スクリーンショット 2019-05-05 11.37.25.png

完成

これで完成です。
ビルドしてみましょう。
スクリーンショット 2019-05-05 11.39.54.png

できました。

参考

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?