Skip to content

Instantly share code, notes, and snippets.

@tks2shimizu
Last active December 19, 2015 16:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tks2shimizu/878fc01426991414a2b7 to your computer and use it in GitHub Desktop.
Save tks2shimizu/878fc01426991414a2b7 to your computer and use it in GitHub Desktop.
テーブルビュー
#include "HelloWorldScene.h"
USING_NS_CC;
USING_NS_CC_EXT;
CCScene* HelloWorld::scene()
{
CCScene *scene = CCScene::create();
HelloWorld *layer = HelloWorld::create();
scene->addChild(layer);
return scene;
}
bool HelloWorld::init()
{
if ( !CCLayer::init() )
{
return false;
}
CCSize winSize = CCDirector::sharedDirector()->getWinSize();
CCTableView* tableview = CCTableView::create(this, CCSizeMake(100, 250));
tableview->setPosition(ccp(winSize.width / 2 - 50, winSize.height / 2 - 125));
tableview->setVerticalFillOrder(kCCTableViewFillTopDown);
tableview->setDelegate(this);
this->addChild(tableview);
return true;
}
#pragma mark - CCTableViewDelegate
CCSize HelloWorld::tableCellSizeForIndex(CCTableView *table, unsigned int idx)
{
return CCSizeMake(100, 100);
}
CCTableViewCell* HelloWorld::tableCellAtIndex(CCTableView *table, unsigned int idx)
{
CCTableViewCell *cell = new CCTableViewCell();
cell->autorelease();
CCSprite *sprite = CCSprite::create(CCString::createWithFormat("cat%02d.png", idx)->getCString());
sprite->setAnchorPoint(CCPointZero);
sprite->setPosition(ccp(0, 0));
cell->addChild(sprite);
return cell;
}
unsigned int HelloWorld::numberOfCellsInTableView(CCTableView *table)
{
return 6;
}
#pragma mark - CCTableViewDataSource
void HelloWorld::tableCellTouched(CCTableView* table, CCTableViewCell* cell)
{
CCLog("tableCellTouched idx: %d", cell->getIdx());
}
#ifndef __HELLOWORLD_SCENE_H__
#define __HELLOWORLD_SCENE_H__
#include "cocos2d.h"
#include "cocos-ext.h"
class HelloWorld : public cocos2d::CCLayer
,public cocos2d::extension::CCTableViewDataSource
,public cocos2d::extension::CCTableViewDelegate
{
public:
virtual bool init();
static cocos2d::CCScene* scene();
CREATE_FUNC(HelloWorld);
// CCTableViewDataSource
virtual cocos2d::CCSize tableCellSizeForIndex(cocos2d::extension::CCTableView *table, unsigned int idx);
virtual cocos2d::extension::CCTableViewCell* tableCellAtIndex(cocos2d::extension::CCTableView *table, unsigned int idx);
virtual unsigned int numberOfCellsInTableView(cocos2d::extension::CCTableView *table);
// CCTableViewDelegate
virtual void scrollViewDidScroll(cocos2d::extension::CCScrollView* view) {};
virtual void scrollViewDidZoom(cocos2d::extension::CCScrollView* view) {};
virtual void tableCellTouched(cocos2d::extension::CCTableView* table, cocos2d::extension::CCTableViewCell* cell);
};
#endif // __HELLOWORLD_SCENE_H__
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment