如何在没有自定义类的情况下将UILabel添加到UICollectionViewCell?

问题描述:

我已经将UICollectionViewController拖动到主故事板并创建相应的类。如何在没有自定义类的情况下将UILabel添加到UICollectionViewCell?

enter image description here 我已经正确命名/连接了故事板和视图控制器中的所有内容。

enter image description here enter image description here

但我无法访问我放在UICollectionViewCell对象......比如我不能设置文本属性上的UILabel。

enter image description here

如果我创建一个自定义UICollectionViewCell类并创建/连接@IBOutlet到的UILabel一切工作正常。

但是,我必须创建这个自定义的UICollectionViewCell类吗?

看起来集合视图是基于故事板中的树状视图注意到标签已添加到单元中。

我只是想添加一个标签w /一些默认文本,并希望避免添加额外的文件。

+1

您需要自定义类,因为您的dequeueReusableCell将返回没有标签的UICollectionViewCell。但是为它编写一个自定义类非常简单。 – Retterdesdialogs

+0

我知道这很容易,并知道如何做到这一点..但似乎没有必要添加单元格的自定义类。故事板似乎意识到单元格包含uilabel对象,并且代码似乎知道单元格的标识符。看起来很奇怪,它还需要自定义类和iboutlet手动创建的连接 – seanb123

+0

@ seanb123检查我的答案 –

你可以做,即使没有创建自定义类,通过使用“标签”

例如,给标签“101”到您UICollectionView标签,如下图所示。

然后在您的cellForRowAt方法:

let label = cell.viewWithTag(101) as! UILabel 
label.text = "Hi" 

enter image description here

希望它能帮助!

+0

中添加标签和约束条件谢谢。这是我正在寻找的。我希望能够做到这一点,只是单元格标识符,但这确实有效。 – seanb123

+0

快乐编码:-) @ seanb123 –

+0

嗯.. @lmad你怎么让它出现在细胞中? – seanb123

UICollectionView没有像UITableView这样的现成的单元模板。 您将不得不创建自己的UICollectionViewCell类。

+0

这不提供问题的答案。一旦你有足够的[声誉](https://stackoverflow.com/help/whats-reputation),你将可以[对任何帖子发表评论](https://stackoverflow.com/help/privileges/comment);相反,[提供不需要提问者澄清的答案](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- I-DO-代替)。 - [来自评论](/ review/low-quality-posts/17006902) –