日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

swift 3.0 中使用 xib

發布時間:2025/3/8 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 swift 3.0 中使用 xib 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章寫于2016年9月底,Xcode 8,swift 3.0
真是蛋疼,折騰了很長時間,試了網上很多教程,結果又莫名的可以了!

1.方法和OC中一樣

將一個xib文件和一個ViewController類進行關聯的幾步操作:

  • command + n 創建一個新的文件,選擇 User Interface - View 或者 Empty。

  • 如果選擇的是 Empty 就需要在xib文件中,自己創建一個View。

  • 將xib文件和ViewController類進行綁定,點擊左上角的 File's Owner,在右邊的選項的中的第三個選項卡的第一個欄目中寫入需要綁定的類名。

  • 將xib中的view和self.view進行關聯,按住control 從File's Owner連線到view。

  • 或者
    ?在創建ViewController文件時,可以選擇直接創建一個關聯完畢的xib文件。默認已經幫你完成上面幾步。

    注:?當一個視圖控制器類,有相關聯的xib文件時(文件名相同),在執行內部loadView方法時,會自動的去讀取xib,所以這樣就能實現了。

    說明:以上方法和OC中完全一樣,在swift項目中也一樣可以實現。但是我第一次弄的時候莫名的出現問題,現在測試可以使用。網上的內容說還需要以下部分才能實現,個人測試以下的內容也需要在xib文件綁定和關聯之后才可用。(個人覺得沒必要,特定環境下需要以下內容)

    2.在該類中復寫 init

    override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) {super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil) }convenience init() {var nibNameOrNil = String?("ViewController")//這里根據自己xib名//考慮到xib文件可能不存在或被刪,故加入判斷if Bundle.main.path(forResource: nibNameOrNil, ofType: "xib") == nil {nibNameOrNil = nil}self.init(nibName: nibNameOrNil, bundle: Bundle.main) }required init(coder aDecoder: NSCoder) {fatalError("init(coder:) has not been implemented") }

    總結

    以上是生活随笔為你收集整理的swift 3.0 中使用 xib的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。