为什么UICollectionViewCell的出口零?
我在界面生成器中创build了一个自定义的UICollectionViewCell,将它绑定到类的视图上,然后当我想使用string并设置一个string到标签上时,标签有一个零值。
override func viewDidLoad() { super.viewDidLoad() // Register cell classes self.collectionView.registerClass(LeftMenuCollectionViewCell.self, forCellWithReuseIdentifier: "ls") } override func collectionView(collectionView: UICollectionView!, cellForItemAtIndexPath indexPath: NSIndexPath!) -> UICollectionViewCell! { var cell: LeftMenuCollectionViewCell cell = collectionView.dequeueReusableCellWithReuseIdentifier("ls", forIndexPath: indexPath) as LeftMenuCollectionViewCell println(cell.label) // <- this is nil, why?? cell.label.text = "asd" return cell }
和子types的单元格:
class LeftMenuCollectionViewCell: UICollectionViewCell { @IBOutlet weak var imageView: UIImageView! @IBOutlet weak var label: UILabel! @IBOutlet weak var activityIndicatorView: UIActivityIndicatorView! }
我再次调用self.collectionView.registerClass(LeftMenuCollectionViewCell.self, forCellWithReuseIdentifier: "ls")
。 如果您正在使用故事板,则不想调用此function 。 它会覆盖你在故事板上的内容。
如果仍然存在问题,请检查其中的reuseIdentifier
与 dequeueReusableCellWithReuseIdentifier
和 storyboard
相同 。
只要删除这一行:
self.collectionView.registerClass(LeftMenuCollectionViewCell.self, forCellWithReuseIdentifier: "ls")
如果您使用的是xib,请确保您已将这行代码添加到您的viewdidload。
[self.collectionView registerNib:[UINib nibWithNibName:@"MyCell" bundle:nil] forCellWithReuseIdentifier:@"CELL"];
我有一个类似的问题,但我的错误是,我没有委托CollectionViewCell能够更改标签文本..
我也有类似的问题。 我使用故事板和设置reuseIdentifier到处都是。 在单元格中的故事板和下面的metod中:
override func collectionView(collectionView: UICollectionView!, cellForItemAtIndexPath indexPath: NSIndexPath!) -> UICollectionViewCell!
但我仍然有问题,我的意见在我的customcell是零。
class CustomCell: UICollectionViewCell { @IBOutlet weak var myLabel: UILabel! }