您的位置:首页 > 移动开发 > Cocos引擎

04 Menu 菜单

2014-09-04 17:01 141 查看
菜单分为两步:

一、创建菜单的项

二、创建菜单

知识点:

local function itemCallback()
print("点击")
end
--item  注册回调函数:
item:registerScriptTapHandler(itemCallback)


一、菜单项

1、标签菜单项(Label Item)

(1) MenuItemLabel

local label1 = cc.Label:createWithSystemFont("菜单项1","arial",50)
local item1 = cc.MenuItemLabel:create(label1)   --设置label 可以直接增加参数2直接设置回调函数
item1:setDisabledColor(cc.c3b(125,125,125))     --设置不可用颜色
item1:setColor(cc.c3b(0,255,0))                 --设置颜色


(2) MenuItemAtlasFont 继承MenuItemLabel

-- 在 lua 中是否存在此方法?
--local item2 = cc.MenuItemAtlasFont:create(value,charMapFile,itemWidth,itemHeight,startCharMap)


(3)MenuItemFont  继承MenuItemLabel

local item3 = cc.MenuItemFont:create("菜单项3")
item3:setFontSizeObj(50)            --设置默认字体大小
item3:setFontNameObj("fangsong")    --设置默认字体名称
item3:setColor(cc.c3b(0,255,255))


2、图片菜单项(Sprite Item)

(1) MenuItemSprite

--local spriteNormal   = cc.Sprite:create("p1.png")
--local spriteSelected = cc.Sprite:create("p1.png")
--local spriteDisabled = cc.Sprite:create("p1.png")

--local  item4 = cc.MenuItemSprite:create(spriteNormal, spriteSelected, spriteDisabled)


(2) MenuItemImage 继承MenuItemSprite

--local  item5 = cc.MenuItemImage:create("p1.png", "p1.png","p1.png")


3、触发器菜单项(Toggle Item)

cc.MenuItemFont:setFontSize(50)
local item6 = cc.MenuItemToggle:create(
cc.MenuItemFont:create( "Off"),
cc.MenuItemFont:create( "33%" ),
cc.MenuItemFont:create( "66%" )
)
item6:addSubItem(cc.MenuItemFont:create( "100%"))
item6:setColor(cc.c3b(255,255,0))

local function menuCallback(tag, sender)
--tag没有设置 默认-1
print("当前项tag: %d, 该项当前子项下标: %d", tag, sender:getSelectedIndex() )
end
item6:registerScriptTapHandler(menuCallback)


二、菜单

local menu = cc.Menu:create()
menu:addChild(item1)
--menu:addChild(item2)
menu:addChild(item3)
menu:addChild(item6)
menu:setPosition(568,320)

--menu:alignItemsHorizontally() --自动横向对其
menu:alignItemsVertically()     --自动竖向对其
self:addChild(menu)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息