zl程序教程

您现在的位置是:首页 >  其它

当前栏目

Cocos2d-x中如何增加图片和文本菜单

如何 图片 文本 增加 菜单 cocos2d
2023-09-11 14:16:56 时间

菜单都以MenuItem开头

MenuItemLabel - 文本菜单项

MenuItemImage - 图片菜单项

 

// on "init" you need to initialize your instance
bool HelloWorld::init()
{
    if (!Layer::init())
    {
        return false;
    }
    //获取屏幕大小
    Size visibleSize = Director::getInstance()->getVisibleSize();
    //创建一个菜单项,类型为图片菜单类型
    MenuItemImage* pCloseItem = MenuItemImage::create(
        "CloseNormal.png",    //正常状态下的图片
        "CloseSelected.png",//单击状态下的图片
        this,
        menu_selector(HelloWorld::menuCloseCallback2));//单击菜单项时,回调的函数
    //创建一个标签
    Label* label = Label::create("I am Label Item.", "Arial", 30);

    //用标签对象创建一个标签菜单项
    MenuItemLabel* pLabelItem = MenuItemLabel::create(label);

    //创建菜单,菜单和场景的概念差不多,也是虚拟的,用来存放各种菜单项
    Menu* pMenu = Menu::create(pCloseItem, pLabelItem, NULL);

    //让所有的菜单项在垂直方向上自动排列
    pMenu->alignItemsVertically();

    //设置菜单的坐标
    pMenu->setPosition(Point(visibleSize.width / 2, visibleSize.height / 2));

    //添加菜单到层里
    this->addChild(pMenu, 1);

    return true;
}

void HelloWorld::menuCloseCallback2(Ref* pSender)
{
    MessageBox("You clicked the menu!", "Alert");
}