• cocos2d-x3.0 PageView



    .h加入例如以下代码:

        void pageViewEvent(Ref *pSender, PageViewEventType type);
    


    .m

       layout = Layout::create();
            layout->setSize(Size(widgetSize.width, widgetSize.height));
           
            //横向排列,这里相似Android里的线性布局
            //layout->setLayoutType(LAYOUT_RELATIVE);
            /*以图片为背景*/
            layout->setBackGroundImageScale9Enabled(true);
            layout->setBackGroundImage("green_edit.png");
            
            layout->setPosition(Point(0,0));
            addChild(layout);
    
            /******************************************************************************************/
            PageView* pageView = PageView::create();
            pageView->setSize(Size(480, 260));
            pageView->setPosition(Point(widgetSize.width / 2, widgetSize.height / 2));
            
            for (int i = 0; i < 3; i++) {
                Layout* layout1 = Layout::create();
                layout1->setSize(Size(480, 260));
                
                ImageView* imageView = ImageView::create("scrollviewbg.png");
                imageView->setScale9Enabled(true);
                imageView->setSize(Size(480, 260));
                imageView->setPosition(Point(layout1->getSize().width / 2, layout1->getSize().height / 2));
                layout1->addChild(imageView);
                
                
                
                Text* label = Text::create(StringUtils::format("page %d",(i+1)), "fonts/Marker Felt.ttf", 30);
                label->setColor(Color3B(92, 192, 192));
                label->setPosition(Point(layout1->getSize().width / 2.0f, layout1->getSize().height / 2.0f));
                layout1->addChild(label);
                
                
                
                pageView->addPage(layout1);
                
                
                
    
            }
           
            pageView->addEventListenerPageView(this, pagevieweventselector(LayoutTest::pageViewEvent));
            
            layout->addChild(pageView);

    void LayoutTest::pageViewEvent(cocos2d::Ref *pSender, PageViewEventType type)
    {
        switch (type) {
            case cocos2d::ui::PAGEVIEW_EVENT_TURNING:
            {
                PageView* pageView = dynamic_cast<PageView*>(pSender);
                log("%d",pageView->getCurPageIndex() + 1);
            }
                break;
                
            
            default:
                break;
        }
    }
    


  • 相关阅读:
    switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上?
    int和Integer有什么区别?
    访问修饰符public,private,protected,以及不写(默认)时的区别?
    Hashmap如何同步?
    Iterator和ListIterator的区别?
    Java的HashMap是如何工作的?
    MyBatis与Hibernate有哪些不同?
    Spring框架中有哪些不同类型的事件?
    Spring的自动装配?
    Spring如何处理线程并发问题?
  • 原文地址:https://www.cnblogs.com/cynchanpin/p/6835138.html
Copyright © 2020-2023  润新知