2016-02-02 41 views
0

我遇到問題,試圖將我的.xib加載到UIView中。我創建了一個xib文件和子類UIView作爲相同的名稱。我已將xib文件的類更改爲ProfileBarView類。在我UIView的代碼,我有:將.xib加載到UIView時出錯

import UIKit 
import EDStarRating 

class ProfileBarView: UIView { 

    @IBOutlet weak var profileImageView: UIImageView! 
    @IBOutlet weak var studentNameLabel: UILabel! 
    @IBOutlet weak var universityNameLabel: UILabel! 
    @IBOutlet weak var starRatingView: EDStarRating! 

    override init(frame: CGRect) { 

     super.init(frame: frame) 
     NSBundle.mainBundle().loadNibNamed("ProfileBarView", owner: self, options: nil) 
     addSubview(self.view) 

    } 

    required init?(coder aDecoder: NSCoder) { 

     super.init(coder: aDecoder) 
     NSBundle.mainBundle().loadNibNamed("ProfileBarView", owner: self, options: nil) 
     addSubview(self.view) 

    } 


} 

但是我得到的錯誤:Value of type ProfileBarView has no member 'view.我應該怎麼做是錯在這裏幹什麼?

+1

'UIView'對象沒有屬性'view'。那麼你怎麼能'self.view'呢? 'self.addSubiew(NSBundle.mainBundle()。loadNibNamed(「ProfileBarView」,owner:self,options:nil)[0])? – Larme

回答

0

這將完成這項工作。

override init(frame: CGRect) { 


     super.init(frame: frame) 
     let view = NSBundle.mainBundle().loadNibNamed("ProfileBarView", owner: self, options: nil)[0] 
     addSubview(view as! UIView) 
    } 

    required init?(coder aDecoder: NSCoder) { 

     super.init(coder: aDecoder) 
     let view = NSBundle.mainBundle().loadNibNamed("ProfileBarView", owner: self, options: nil)[0] 
     addSubview(view as! UIView) 
    }