实训九(游戏退出按钮的实现)

Posted 恨revenge

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实训九(游戏退出按钮的实现)相关的知识,希望对你有一定的参考价值。

主要是涉及引擎中menu的使用

常见的几种使用方法

1、可变换图标

auto closeItem = MenuItemImage::create(
                                           "CloseNormal.png",
                                           "CloseSelected.png",
                                           CC_CALLBACK_1(HelloWorld::menuCloseCallback, this));
   
 closeItem->setPosition(Vec2(origin.x + visibleSize.width - closeItem->getContentSize().width/2 ,
                                origin.y + closeItem->getContentSize().height/2));

    // create menu, it‘s an autorelease object
    auto menu = Menu::create(closeItem, NULL);
    menu->setPosition(Vec2::ZERO);
    this->addChild(menu, 1);

但是,请注意this->addChild(menu, 1);  当项目中涉及到用数字区分或者记录位置时,如果初始定义了1的具体含义,这里就不能用了

2、文本菜按钮单项,通过指定文本标签,这个点击会有放大效果。先创建一个文本,然后绑在CCMenuItemLabel
上面就可以做按钮了

CCLabelTTF* pLabel = CCLabelTTF::create("button", "Arial", 30);//参数分别是:按钮要显示的文字,字体,字号
CCMenuItemLabel* pBtn = CCMenuItemLabel::create(pLabel) ;
pBtn->setPosition(ccp(100, 100));
CCMenu* pMenu = CCMenu::create(pBtn, NULL);
pMenu->setPosition(CCPointZero);
this->addChild(pMenu);

3、CCMenuItemImage /CCMenuItemFont  + CCMenuItemToggle + CCMenu

这种方法创建的图片按钮在点击之后不会有显示效果切换,例如现在显示start,点击之后会显示stop,不在变化,若再次点击,才会变回start。

 

	CCMenuItemFont* start = CCMenuItemFont::create("start");
	CCMenuItemFont* stop = CCMenuItemFont::create("stop");
	CCMenuItemToggle* toggle = CCMenuItemToggle::createWithTarget(this, menu_selector(MyLayer::show), start, stop, NULL);
	toggle->setPosition(ccp(100, 100));
	CCMenu* menu = CCMenu::create(toggle,NULL);
	menu->setPosition(CCPointZero);
	addChild(menu);

 

以上是关于实训九(游戏退出按钮的实现)的主要内容,如果未能解决你的问题,请参考以下文章

Unity(11)-游戏退出实现

Unity(11)-游戏退出实现

实训十(平台的实现)

unity游戏退出发http

Unity 3D 5.0版本以上用C#语言如何编写退出游戏按钮的代码?

C#基于TCP实现简单游戏客户端