想实现一个Pageview的功能,照着Testcpp中的代码写了一个,但是触摸不能翻页,麻烦各位大神看一下
TemplateLayer::TemplateLayer(void)
{
}
bool TemplateLayer::init()
{
if (!CCLayer::init()) {
return false;
}
visableSize = CCDirector::sharedDirector()->getVisibleSize();
winSize = CCDirector::sharedDirector()->getWinSize();
pageView = UIPageView::create();
pageView->setTouchEnabled(true);
pageView->setSize(CCSize(spWidth, spHeight));
pageView->setAnchorPoint(ccp(0.5, 0.5));
pageView->setPosition(ccp(winSize.width/2, winSize.height/2));
int pageCount = 5;
for (int i = 1; i <= pageCount; ++i)
{
auto layout = UILayout::create();
layout->setSize(CCSize(spWidth, spHeight));
imageView = UIImageView::create();
imageView->setTouchEnabled(true);
imageView->setScale9Enabled(true);
imageView->loadTexture("category1.png");
imageView->setSize(CCSize(spWidth, spHeight));
imageView->setPosition(ccp(layout->getSize().width / 2, layout->getSize().height / 2));
layout->addChild(imageView);
UILabel* label = UILabel::create();
label->setText(CCString::createWithFormat("page %d", i)->getCString());
label->setFontName("Marker Felt");
label->setFontSize(50);
label->setColor(ccc3(192, 192, 192));
label->setPosition(ccp(layout->getSize().width / 2, layout->getSize().height / 2));
layout->addChild(label);
pageView->addPage(layout);
CCLog("sssssssssssssssssssssssssssssssssssssssssss");
}
pageView->addEventListenerPageView(this, pagevieweventselector(TemplateLayer::pageViewEvent));
this->addChild(pageView);
return true;
}
void TemplateLayer::pageViewEvent(CCObject *pSender, PageViewEventType type)
{
long level = pageView->getCurPageIndex() + 1;
CCLog("pageNumber: %ld", level);
}
TemplateLayer::~TemplateLayer(void)
{
}
```