Cocos2d-x 3.2 学习笔记



获取屏幕大小(Visible)





<code class = "perl" >Size visibleSize = Director::getInstance()->getVisibleSize();
Vec2 origin = Director::getInstance()->getVisibleOrigin();
</code>

打印调试(CCLOG)










<code class = "perl" >CCLOG( "Characters: %c %c" , 'a' , 65 );
CCLOG( "Decimals: %d %ld" , 1977 , 650000L);
CCLOG( "Preceding with blanks: %10d" , 1977 );
CCLOG( "Preceding with zeros: %010d" , 1977 );
CCLOG( "Some different radixes: %d %x %o %#x %#o" , 100 , 100 , 100 , 100 , 100 );
CCLOG( "Floats: %4.2f %.0e %E" , 3.1416 , 3.1416 , 3.1416 );
CCLOG( "%s" , "A string" );
</code>

创建菜单(Menu Item)












<code class = "cpp" > // 创建菜单
auto menuItem = MenuItemImage::create( "MenuNormal.png" ,
                                        "MenuSelected.png" ,
                                        CC_CALLBACK_1(HelloWorld::menuCallback, this ) );
// 设置坐标
menuItem->setPosition( Vec2(x,y) );
// 创建菜单
auto menu = Menu::create(menuItem, NULL);
menu->setPosition(Vec2::ZERO);
this ->addChild(menu, 1 );
</code>

创建标签(Label)






<code class = "perl" >auto label = LabelTTF::create( "Hello World" , "Arial" , 24 );
label->setPosition(Vec2(x,y));
this ->addChild(label, 1 );
</code>

添加精灵(Sprite)







<code class = "perl" >auto sprite = Sprite::create( "Me.jpg" );
sprite->setPosition(Vec2(visibleSize.width / 2 , visibleSize.height / 2 ));
sprite->setAnchorPoint(Vec2( 0.5 , 0.5 ));
this ->addChild(sprite, 0 );
</code>

精灵动画(Action)






<code class = "sql" >auto  actionBy = MoveBy::create( 1 , Point( 100 , 100 ));
auto  easeAction = EaseIn::create(actionBy, 2 .5f);
sprite->runAction(Repeat::create(easeAction, 5 ));
</code>

添加监听(Listener)
































<code class = "cpp" >auto listener1 = EventListenerTouchOneByOne::create();
 
listener1->onTouchBegan = [](Touch* touch, Event* event){
     auto target = static_cast<sprite*>(event->getCurrentTarget());
     Point locationInNode = target->convertToNodeSpace(touch->getLocation());
     Size s = target->getContentSize();
     Rect rect = Rect( 0 , 0 , s.width, s.height);
             if (rect.containsPoint(locationInNode))
     {
         log( "sprite began... x = %f, y = %f" , locationInNode.x, locationInNode.y);
         target->setOpacity( 180 );
         return true ;
     }
     return false ;
};
 
listener1->onTouchMoved = [](Touch* touch, Event* event){
     auto target = static_cast<sprite*>(event->getCurrentTarget());
     target->setPosition(target->getPosition() + touch->getDelta());
};
 
listener1->onTouchEnded = [=](Touch* touch, Event* event){
     auto target = static_cast<sprite*>(event->getCurrentTarget());
     if (target == sprite)
     {
         log( "Click on the sprite" )
     }
};
 
_eventDispatcher->addEventListenerWithSceneGraphPriority(listener1, sprite);</
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值