• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

CACollectionViewDataSource

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

类说明

CACollectionView的数据代理


CACollectionViewDataSource 方法(点击查看方法介绍)

方法说明
collectionCellAtIndex获取指定cell
collectionViewHeightForRowAtIndexPathcell的高度
numberOfItemsInRowsInSection每个cell里的item数量
numberOfRowsInSection获取对应的section所包含的cell个数
numberOfSections获取tableview包含的section个数
collectionViewSectionViewForHeaderInSectionheaderView的内容
collectionViewHeightForHeaderInSection每个section的headerView
collectionViewSectionViewForFooterInSectionfooterView的内容
collectionViewHeightForFooterInSection每个section的footerView
collectionViewWillDisplayCellAtIndex回调当前将要显示的Collection


CACollectionViewDataSource 方法说明

virtual CACollectionViewCell* collectionCellAtIndex(CACollectionView *collectionView, const DSize& cellSize, unsigned int section, unsigned int row, unsigned int item)

返回值:virtual CACollectionViewCell*

参数:

类型参数名说明
CACollectionViewcollectionViewcell
DSizecellSizecell大小
unsigned intsectionSection
unsigned int row
unsigned intitem项目

解释:获取指定cell

示例:

CACollectionViewCell* CollectionViewTest::collectionCellAtIndex(CACollectionView *collectionView, 
const CCSize& cellSize, unsigned int section, unsigned int row, unsigned int item)
{
    CACollectionViewCell* p_Cell = collectionView->dequeueReusableCellWithIdentifier("CrossApp");
    if (p_Cell == NULL)
    {
        p_Cell = CACollectionViewCell::create("CrossApp");
        CAImageView* itemView = CAImageView::createWithImage(CAImage::create("logo.png"));
        itemView->setCenter(CCRect(cellSize.width*0.5,cellSize.height*0.5,cellSize.height * 0.90,cellSize.height * 0.90));
        itemView->setTag(99);
        p_Cell->addSubview(itemView);
  
        CALabel* itemText = CALabel::createWithCenter(CCRect(itemView->getBounds().size.width*0.5, 
                                                            itemView->getBounds().size.height*0.5, 
                                                            itemView->getBounds().size.width*0.6, 
                                                            itemView->getBounds().size.width*0.5));
        itemText->setTag(100);
        itemText->setFontSize(29 * CROSSAPP_ADPTATION_RATIO);
        itemText->setTextAlignment(CATextAlignmentCenter);
        itemText->setVerticalTextAlignmet(CAVerticalTextAlignmentCenter);
        itemView->addSubview(itemText);
  
    }
    char pos[20] = "";
    sprintf(pos, "(%d,%d,%d)",section, row, item);
    CALabel* itemText = (CALabel*)p_Cell->getSubviewByTag(99)->getSubviewByTag(100);
    itemText->setText(pos);
  
    return p_Cell;
}


virtual unsigned int collectionViewHeightForRowAtIndexPath(CACollectionView* collectionView, unsigned int section, unsigned int row)

返回值:virtual unsigned int

参数:

类型参数名说明
CACollectionViewcollectionViewcell
unsigned intsectionSection
unsigned int row
unsigned intitem项目

解释:cell的高度


virtual unsigned int numberOfItemsInRowsInSection(CACollectionView *collectionView, unsigned int section, unsigned int row)

返回值:virtual unsigned int

参数:

类型参数名说明
CACollectionViewcollectionViewcell
unsigned intsectionSection
unsigned int row
unsigned intitem项目

解释:每个cell里的item数量


virtual unsigned int numberOfRowsInSection(CACollectionView *collectionView, unsigned int section)

返回值:virtual unsigned int

参数:

类型参数名说明
CACollectionViewcollectionViewcell
unsigned intsectionSection

解释:获取对应的section所包含的cell个数


virtual unsigned int numberOfSections(CACollectionView *collectionView)

返回值:virtual unsigned int

参数:

类型参数名说明
CACollectionViewcollectionViewcell

解释:获取tableview包含的section个数


virtual CAView* collectionViewSectionViewForHeaderInSection(CACollectionView *collectionView, const DSize& viewSize, unsigned int section)

返回值:virtual CAView*

参数:

类型参数名说明
CACollectionViewcollectionViewcell
DSizecellSizecell大小
unsigned intsectionSection

解释:headerView的内容


virtual unsigned int collectionViewHeightForHeaderInSection(CACollectionView *collectionView, unsigned int section)

返回值:virtual unsigned int 

参数:

类型参数名说明
CACollectionViewcollectionViewcell
unsigned intsectionSection

解释:每个section的headerView


virtual CAView* collectionViewSectionViewForFooterInSection(CACollectionView *collectionView, const DSize& viewSize, unsigned int section)

返回值:virtual CAView*

参数:

类型参数名说明
CACollectionViewcollectionViewcell
const DSize&viewSize视图大小
unsigned intsectionSection

解释:footerView的内容


virtual unsigned int collectionViewHeightForFooterInSection(CACollectionView *collectionView, unsigned int section)

返回值:virtual unsigned int

参数:

类型参数名说明
CACollectionViewcollectionViewcell
CCSizecellSizecell大小
unsigned intsectionSection

解释:每个section的footerView


virtual void collectionViewWillDisplayCellAtIndex(CACollectionView* table, CACollectionViewCell* cell, unsigned int section, unsigned int row, unsigned int item) {};

返回值:virtual void

参数:

类型参数名说明
CACollectionView*table
CACollectionViewcollectionViewcell
unsigned intsectionSection
unsigned int row
unsigned intitem项目

解释:回调当前将要显示的Collection



鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
CASlider(滑动条)发布时间:2022-02-02
下一篇:
CACollectionView(容器)发布时间:2022-02-02
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap