2016-09-20 98 views
-1

我正在使用帶有自定義XIB的Storyboard,在升級到swift 2和xcode 7之前,所有內容都會正常加載。升級完成後,可以將故事板轉換爲xcode 8.我的viewcontroller顯示視圖,但它缺少我的自定義XIB。看看故事板文件,它看起來像一個故事板與自定義XIB轉換的錯誤。還有誰有相同的問題嗎?用Swift 3加載時自定義XIB缺失3 Xcode 8

required public init(coder aDecoder: NSCoder) { 
    super.init(coder: aDecoder)! 
    let bundle = Bundle(for: type(of: self)) 
    let nib = UINib(nibName: self.dynamicTypeName, bundle: bundle) 
    let nibView = nib.instantiate(withOwner: self, options: nil).first as! UIView 
    self.mainView = nibView 
    self.mainView.frame = bounds 
    self.mainView.autoresizingMask = [.flexibleWidth, .flexibleHeight] 
    mainView.translatesAutoresizingMaskIntoConstraints = true 
    self.addSubview(mainView) 
} 

回答

0

出了點與SWIFT 3的佈局過程中,因爲升級

之前調用self.mainView.frame =界限,會給你正確的範圍,但現在隨着SWIFT 3的總( 0,0,1000,1000),所以我必須在layoutSubviews中設置框架以獲得正確的邊界。

open override func layoutSubviews() { 
    self.mainView.frame = bounds 
} 
+0

我也面臨同樣的問題,你有沒有找到任何解決方案。 –

+0

是的,嘗試在layoutSubviews – RiceAndBytes

+0

中設置您的自定義xib框架不知道爲什麼它不自動拍攝框架,儘管提供的房間仍然是全屏幕(比如mainscreen.rect) –

相關問題