Ios 使用UICollectionView页脚中的对象
我有一个UICollectionView,有一堆单元格和一个页脚。在这个页脚中,我有一个按钮和标签,我想用它来做一些事情(更改标签的文本,设置按钮的动画等等)。所以我试着为我的控制器设置一个出口,这样我就可以使用这些对象,但是当我这样做时,我得到一个错误,说我有一个非法的配置:连接不能有一个原型对象作为它的目标。为什么会这样?有什么办法绕过它吗Ios 使用UICollectionView页脚中的对象,ios,objective-c,cocoa-touch,uicollectionview,Ios,Objective C,Cocoa Touch,Uicollectionview,我有一个UICollectionView,有一堆单元格和一个页脚。在这个页脚中,我有一个按钮和标签,我想用它来做一些事情(更改标签的文本,设置按钮的动画等等)。所以我试着为我的控制器设置一个出口,这样我就可以使用这些对象,但是当我这样做时,我得到一个错误,说我有一个非法的配置:连接不能有一个原型对象作为它的目标。为什么会这样?有什么办法绕过它吗 非常感谢 不要通过IBOutlet连接这些UI元素,而是在NIB或故事板文件中为它们设置标记值,并使用该值引用它们。例如: 如果将ui标签设置为5 -
非常感谢 不要通过
IBOutlet
连接这些UI元素,而是在NIB或故事板文件中为它们设置标记值,并使用该值引用它们。例如:
如果将ui标签设置为5
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
{
UICollectionReusableView *footerView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:@"FooterView" forIndexPath:indexPath];
UILabel *label = (UILabel*)[footerView viewWithTag:5];
label.text = //set text;
return footerView;
}
正如代码和错误所表明的,页眉和页脚视图以及UICollectionView
的单元格将被重用<代码>IBOutlet
s是指导致您出现问题的单个对象 这是对我帮助最大的解决方案。在UICollectionView和UITableView的大多数情况下,它们是单个部分。所以只需将标记设置为indexPath.item