我是UICollectionView的新手。我正在尝试将两个UILabel添加到我的自定义UICollectionViewCell
,如下所示。
@interface PassCell : UICollectionViewCell
@property (nonatomic) IBOutlet UILabel *titleLabel;
@property (nonatomic) IBOutlet UIButton *infoButton;
@property (nonatomic) IBOutlet UIButton *doneButton;
@property (nonatomic) IBOutlet UILabel *headerTitle;
我已与UILabel
中的Storyboard
关联。
但是,当我在CellforITemAtIndexPath
中设置headerTitle时,headerTitle UILabel
无法显示。只有titleLabel可以设置值。
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
PassCell *cell = (PassCell *)[collectionView dequeueReusableCellWithReuseIdentifier:@"pass" forIndexPath:indexPath];
cell.titleLabel.shadowColor = [UIColor blackColor];
cell.titleLabel.textColor = [UIColor whiteColor];
cell.titleLabel.shadowOffset = CGSizeMake(0, 1);
cell.titleLabel.text = @"Test";
cell.headerTitle.text // That doesn't appear.
return cell;
}
我的代码出了什么问题?
答案 0 :(得分:0)
您必须在cellForRow方法之前注册CustomCell,以编程方式(在viewDidLoad中)
[self.collectionView registerClass:[PassCell class] forCellWithReuseIdentifier:@"pass"];
我不太确定它是如何在StoryBoards中完成的,但是以编程方式执行它并没有错。
答案 1 :(得分:0)
只需将storyBoard中的自定义类设置为collectionView Cell
即可