我來自Obj-C,我很努力地在Swift中做一些超級基本的東西!Swift - Subclassed UICollectionViewCell無法加載IBOutlet屬性
我有一個自定義UICollectionViewCell
:
class CustomCell: UICollectionViewCell
{
// Outlets
// ***************************
@IBOutlet weak var button: UIButton!
// Init
// ***************************
required init?(coder aDecoder: NSCoder)
{
super.init(coder:aDecoder)
setup()
}
override init(frame: CGRect)
{
super.init(frame: frame)
setup()
}
func setup()
{
button.backgroundColor = .white
}
}
細胞來自外部的.xib文件中加載,所以init(coder:)
被調用初始化,但我的按鈕還沒有準備好。
如果我更改爲button?.backgroundColor
該應用程序不會崩潰,但顯然沒有發生任何事情。
我可以在layoutSubviews()
中調用我的setup()
函數,它可以工作,但它絕對不是正確的地方。
如何解決這個大問題?笑
編輯
可能是我打電話給setup()
從awakeFromNib()
,對不對? 我通常不使用外部.xib,我不熟悉它們
是啊,我剛剛意識到,星期一早上該死! :)謝謝 –
@JacopoPenzo我感覺你! :) np man,GL,順便說一句,如果你有相同的重用標識符,只在VC的「viewDidLoad」中註冊一次,否則你需要爲每個唯一標識符註冊一次。 – 2017-01-23 00:14:07
我正在使用'IGListKit',所以沒有註冊登記:) –