问题:
编译执行UICollectionView cellForItemAtIndexPath的 UICollectionViewDataSource 代理的方法,如下
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section;
- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView;
但是不执行
- (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath;
说明:
初始化成功并且设置代理有写
<UICollectionViewDelegate,UICollectionViewDataSource>
collectionView.delegate = self;
collectionView.dataSource = self;
问题原因:
设置Layout时,直接使用UICollectionViewLayout.
UICollectionViewLayout *layout = [[UICollectionViewLayout alloc]init];
问题解决:
不可直接使用 UICollectionViewLayout.因为UICollectionViewLayout是抽象类,必须要子类化才可以使用. 可以使用系统提供的UICollectionViewFlowLayout获取(UICollectionViewLayout/UICollectionViewFlowLayout)的子类对象.