码迷,mamicode.com
首页 > 其他好文 > 详细

八、CCMenu和CCMenuItem

时间:2014-06-14 22:32:31      阅读:354      评论:0      收藏:0      [点我收藏+]

标签:class   blog   java   http   tar   color   

游戏中经常会提供一些菜单项让用户开始游戏、暂停\继续游戏、打开\关闭音乐或者是返回到上一个界面,比如下面两张图中用红色线框标记的菜单项

bubuko.com,布布扣   bubuko.com,布布扣

我们可以使用CCMenu和CCMenuItem实现上述的菜单功能,CCMenu继承自CCLayer,只能添加CCMenuItem为子节点。一个CCMenuItem就可以表示一个菜单项。

CCMenuItem继承自CCNode,来看下它的继承结构

bubuko.com,布布扣

下面直接上代码

 

[java] view plaincopy
 
  1. // 第一个菜单项:CCMenuItemFont  
  2. // 设置文字大小  
  3. [CCMenuItemFont setFontSize:50];  
  4. CCMenuItemFont *item1 = [CCMenuItemFont itemFromString:@"文字菜单" block:^(id sender) {  
  5.     NSLog(@"点击了文字菜单");  
  6. }];  
  7. // 文字为黄色  
  8. item1.color = ccc3(2552550);  
  9.   
  10. // 第二个菜单项:CCMenuItemToggle  
  11. // 重新设置字体和大小  
  12. [CCMenuItemFont setFontName:@"Courier New"];  
  13. [CCMenuItemFont setFontSize:40];  
  14. // on为青色  
  15. CCMenuItemFont *on = [CCMenuItemFont itemFromString:@"On"];  
  16. on.color = ccc3(0255255);  
  17. // off为红色  
  18. CCMenuItemFont *off = [CCMenuItemFont itemFromString:@"Off"];  
  19. off.color = ccc3(25500);  
  20. CCMenuItemToggle *item2 = [CCMenuItemToggle itemWithBlock:^(id sender) {  
  21.     NSLog(@"切换了开关状态");  
  22. } items:on, off, nil];  
  23.   
  24. // 第三个菜单项:CCMenuItemSprite  
  25. // 默认的精灵  
  26. CCSprite *normal = [CCSprite spriteWithFile:@"lufy.png"];  
  27. // 被按下时的精灵(红色)  
  28. CCSprite *selected = [CCSprite spriteWithFile:@"lufy.png"];  
  29. selected.color = ccRED;  
  30. CCMenuItemSprite *item3 = [CCMenuItemSprite itemFromNormalSprite:normal selectedSprite:selected block:^(id sender) {  
  31.     NSLog(@"点击了图片按钮");  
  32. }];  
  33.   
  34. // 按顺序添加菜单项到菜单中  
  35. CCMenu *menu = [CCMenu menuWithItems:item1, item2, item3, nil];  
  36. // 让菜单居中  
  37. CGSize winSize = [CCDirector sharedDirector].winSize;  
  38. menu.position = ccp(winSize.width * 0.5f, winSize.height * 0.5f);  
  39. // 垂直方向排列菜单项,每个菜单项之间有30的垂直间距  
  40. [menu alignItemsVerticallyWithPadding:30];  
  41.   
  42. // 添加菜单到图层中  
  43. [self addChild:menu];  

默认的效果图

 

bubuko.com,布布扣

 

单击中间的青色的"On"后,变为了红色的off

bubuko.com,布布扣

 

长按下面的头像后,头像变为红色

bubuko.com,布布扣

 

他CCMenuItem的用法都大同小异

 

八、CCMenu和CCMenuItem,布布扣,bubuko.com

八、CCMenu和CCMenuItem

标签:class   blog   java   http   tar   color   

原文地址:http://www.cnblogs.com/llios/p/3786304.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!