加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xcode – UIView中的UICollectionView

发布时间:2020-12-15 01:52:35 所属栏目:百科 来源:网络整理
导读:我试图在UIView内部实现一个UICollectionView,但是我无法找到如何做到这一点。有很多关于如何使用UICollectionView与UICollectionViewController的教程,但不是如何在常规视图中实现一个。 你如何做到这一点? 解决方法 1)将UICollectionView拖到UIView中并
我试图在UIView内部实现一个UICollectionView,但是我无法找到如何做到这一点。有很多关于如何使用UICollectionView与UICollectionViewController的教程,但不是如何在常规视图中实现一个。
你如何做到这一点?

解决方法

1)将UICollectionView拖到UIView中并适当调整大小。

2)创建一个属性,它也是您的.h文件中的集合视图中的IBOutlet:

@property (nonatomic,retain) IBOutlet UICollectionView *myCollectionView;

3)再次在.h文件中声明你的代表,所以现在你的.h应该看起来像这样:

@interface UtaQuickView : UIViewController <UICollectionViewDataSource,UICollectionViewDelegate> {

}

@property (nonatomic,retain) IBOutlet UICollectionView *myCollectionView;

4)将myCollectionView IBOutlet连接到你的故事板中。

5)(可选)如果您的目标是iOS6以上的版本,可合成myCollectionView属性。如果您的目标是iOS6,它将为您自动合成。这适用于所有属性,而不仅仅是UICollectionViews。所以在iOS6中,你根本不需要@synthesize myCollectionView = _myCollectionView。您可以随时使用_mycollectionview访问该属性。

6)在.m文件viewDidLoad中,设置你的委托和dataSource。

_myCollectionView.delegate = self;
_myCollectionView.dataSource = self;

7)实现所需的dataSource方法:

#pragma mark - UICollectionView DataSource 

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section 

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath

从那里,您可以根据需要实现尽可能多的UICollectionViewDelegate方法。但是,根据文档需要2个:

#pragma mark - UICollectionViewDelegate

- (void)collectionView:(UICollectionView *)collectionView didEndDisplayingCell:(UICollectionViewCell *)cell forItemAtIndexPath:(NSIndexPath *)indexPath

- (void)collectionView:(UICollectionView *)collectionView didEndDisplayingSupplementaryView:(UICollectionReusableView *)view forElementOfKind:(NSString *)elementKind atIndexPath:(NSIndexPath *)indexPath

请注意,您可以替换< UICollectionViewDelegateFlowLayout>为< UICollectionViewDelegate>并且仍然可以访问< UICollectionViewDelegate>中的所有方法。因为< UICollectionViewDelegateFlowLayout>是< UICollectionViewDelegate>的子类。

UICollectionViewDataSource Protocol Documentation

UICollectionViewDelegate Protocol Documentation

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读