如何在 UICollectionViewSectionHeader 中嵌入 UICollectionView
Posted
技术标签:
【中文标题】如何在 UICollectionViewSectionHeader 中嵌入 UICollectionView【英文标题】:How to embed UICollectionView inside UICollectionViewSectionHeader 【发布时间】:2014-08-29 09:10:34 【问题描述】:我的应用程序因为
而崩溃[UICollectionViewFlowLayout collectionView:numberOfItemsInSection:]: unrecognized selector sent to instance.
这是因为我的委托方法在我的UICollectionReusableView
中,它不是视图控制器。如何在 UICollectionViewSectionHeader
中嵌入 UICollectionView 并防止我的应用在设置 UICollectionView 的委托时崩溃。
#import "HomeBannerReusableView.h"
#import "HomeBannerCell.h"
@interface HomeBannerReusableView () <UICollectionViewDelegate, UICollectionViewDataSource>
@property (weak, nonatomic) IBOutlet UICollectionView *collectionView;
@end
@implementation HomeBannerReusableView
- (void)awakeFromNib
// Initialization code
[self.collectionView registerNib:[UINib nibWithNibName:@"HomeBannerCell" bundle:nil] forCellWithReuseIdentifier:@"HomeBannerCell"];
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
return 1;
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
HomeBannerCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"HomeBannerCellReusableView" forIndexPath:indexPath];
return cell;
【问题讨论】:
【参考方案1】:无需将collectionView delegate 和dataSource 设置为UIViewController 的子类。在我看来,您不小心将 dataSource 设置为您的布局,而不是 HomeBannerReusableView。检查您设置它的位置(XIB、Storyboard、代码)。
【讨论】:
以上是关于如何在 UICollectionViewSectionHeader 中嵌入 UICollectionView的主要内容,如果未能解决你的问题,请参考以下文章
如何在异步任务中调用意图?或者如何在 onPostExecute 中开始新的活动?