[英]IBOutlet always nil in ViewController methods but ok in IBAction & Viewdidload
[英]UIButton is always nil in viewDidLoad()
我已在故事板上的UIController中添加了UIButton。 然后,我為其創建了IBOutlet連接。 然后在viewDidLoad()中,我想使用創建的按鈕進行操作,但它始終為nil。
class LeftWeekViewController: UIViewController {
@IBOutlet weak var tableView: UITableView!
@IBOutlet weak var weekNumberBtn: PassThroughButton!
@IBOutlet weak var weekNumberBtnBottomSpacing: NSLayoutConstraint!
@IBOutlet weak var plusBtn: UIButton!
var data: [String] = ["sadasd", "adgfdgfdg", "hgfhgfhgfh", "sadasd", "adgfdgfdg", "hgfhgfhgfh", "sadasd", "adgfdgfdg", "hgfhgfhgfh"]
var sections: [String] = ["[Ma 26 Mei]", "[Di 27 Mei]", "[Wo 28 Mei]"]
override func viewDidLoad() {
super.viewDidLoad()
let calender = NSCalendar.currentCalendar()
let dateComponent = calender.components(.CalendarUnitWeekOfYear | .CalendarUnitDay | .CalendarUnitMonth | .CalendarUnitYear, fromDate:NSDate())
weekNumberBtn.setTitle("\(dateComponent.weekOfYear)", forState: UIControlState.Normal)
weekNumberBtn.layer.cornerRadius = weekNumberBtn.frame.height / 2
weekNumberBtn.clipsToBounds = true
self.view.bringSubviewToFront(weekNumberBtn)
self.tableView.separatorStyle = .None
weekNumberBtnBottomSpacing.constant = -1 * (self.tableView(self.tableView, heightForHeaderInSection: 0) - 8)
tableView.registerNib(UINib(nibName: "LeftWeekTableViewCell", bundle: nil), forCellReuseIdentifier: "LeftWeekCell")
var pencilImage = UIImage(named: "pencil")!
pencilImage = resizeImage(pencilImage, size: CGSize(width: plusBtn.frame.width - 15, height: plusBtn.frame.height - 15))
plusBtn.layer.cornerRadius = plusBtn.frame.size.height / 2
plusBtn.clipsToBounds = true
plusBtn.setImage(pencilImage, forState: .Normal)
plusBtn.contentMode = UIViewContentMode.Center
plusBtn.layer.shadowColor = UIColor.blackColor().CGColor
plusBtn.layer.masksToBounds = false
plusBtn.layer.shadowOffset = CGSizeMake(0, 15)
plusBtn.layer.shadowRadius = 10
plusBtn.layer.shadowOpacity = 0.4
self.view.bringSubviewToFront(plusBtn)
}
//...
}
我以相同的方式創建的第一個weekNumberBtn不是nil,但是第二個'plusBtn'總是nil。 我不知道怎么了 有人能幫我嗎?
更新::
我已經清理並重建了項目,並且在創建ViewController時拋出了錯誤的xib文件名。 我已經更改了xib文件名,並且一切正常。
選擇按鈕,然后在其上單擊鼠標右鍵,以查看插座是否存在。 如果沒有可用的連接,則將插座連接到tha按鈕。 即使它不起作用,請刪除現有的插座,然后再次創建插座。 放置斷點並調試它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.