`
fireDragonpzy
  • 浏览: 462553 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

CCMenu及CCMenuItem位置问题

阅读更多
本文为firedragonpzy原创,转载务必在明显处注明:
转载自【Softeware MyZone】原文链接: http://www.firedragonpzy.com.cn/index.php/archives/855


     今天在使用CCMenu的时候整的比较纠结,主要是设置位置问题,接下来,阐述一下我的所遇以及所思、所学。
     常用到的设置CCMenu位置的方法:
                /** align items vertically */
		void alignItemsVertically(); //垂直方向默认间隙排列
		/** align items vertically with padding
		@since v0.7.2
		*/
		void alignItemsVerticallyWithPadding(float padding);//垂直方向以padding间隙排列

		/** align items horizontally */
		void alignItemsHorizontally();//水平方向默认间隙排列
		/** align items horizontally with padding
		@since v0.7.2
		*/
		void alignItemsHorizontallyWithPadding(float padding);//水平方向以padding间隙排列

		/** align items in rows of columns */
		void alignItemsInColumns(unsigned int columns, ...);//将items按照列排列
		void alignItemsInColumns(unsigned int columns, va_list args);

		/** align items in columns of rows */
		void alignItemsInRows(unsigned int rows, ...);//将items按照行排列
		void alignItemsInRows(unsigned int rows, va_list args);

但是要是想要自己设置position,还是得用setPositon()方法,重点到了,注意哦。CCMenuItem想放置的位置,是相对于锚点放置的,只要将CCMenu设置位置在CCPointZero位置即可以按照屏幕位置设置了,否则位置将发生偏差。
还有,尽量单设置项的位置,让CCMenu的位置和屏幕相吻合即可
不早了,这篇文章大体就这样吧,之后再详写,呼呼……
分享到:
评论

相关推荐

    Cocos2D-X2.2.3学习笔记6(UI系统)

    1. **CCMenu与CCMenuItem** CCMenu是Cocos2D-X中用于创建菜单的类,它包含一组CCMenuItem对象。CCMenuItem是菜单项的基本元素,可以是按钮、复选框或切换开关等。你可以通过设置其回调函数来响应用户的触摸事件,...

    cocos2d for iphone 0.99 beginners 源码

    10. **CCMenu与CCMenuItem**:用于创建用户界面菜单,点击后触发相应事件。 通过实践这些源码,你将不仅了解cocos2d的基本用法,还能掌握游戏开发的流程,包括资源管理、性能优化、调试技巧等。随着对cocos2d的理解...

    iOS游戏应用源代码——blessdyb-Essentials_Cocos2D-3597f98.zip

    开发者通常会在CCMenu和CCMenuItem中创建交互元素,并添加事件监听器来响应玩家操作。 7. **粒子系统**:Cocos2D内置了强大的粒子系统,可以轻松创建火、烟雾、爆炸等特效。粒子配置文件(.plist)定义了粒子的生命...

    iOS实例开发源码——lhunath-Cocos2D-iPhone.old-9ab3d34.zip

    5. CCMenu和CCMenuItem:菜单和菜单项的实现,用于创建用户交互界面。 四、源码学习价值 通过研究这个源码,开发者可以: 1. 学习Cocos2D-iPhone的基本架构和设计模式。 2. 理解场景、层、节点的交互方式,以及如何...

    捕鱼达人.zip

    Cocos2d-x提供了CCMenu和CCMenuItem等类来创建交互式的UI元素,开发者可以通过布局和触摸事件处理来实现动态的界面交互。 5. **物理引擎**: 为了模拟真实世界的物理效果,如鱼的游动、子弹的飞行轨迹,捕鱼达人...

    cocos2dApiMenu

    创建一个简单的菜单,你需要实例化CCMenuItem对象,并将它们添加到CCMenu中。例如: ```cpp CCMenuItem *item1 = CCMenuItemFont::create("Start", this, menu_selector(MenuLayer::startGame)); CCMenuItem *item2...

    cocos2d 游戏菜单设置v1

    Cocos2D提供了一系列的动作类,如`CCMoveTo`(移动到指定位置)、`CCScaleTo`(缩放至指定大小)、`CCTintTo`(颜色变化)等,可以应用于任何可渲染的对象,包括菜单项。通过组合这些动作,可以创建复杂的动画序列,...

    CCMenuItemToggle使用1

    创建完成后,将`CCMenuItemToggle`添加到`CCMenu`中,然后设置菜单的位置并将其添加到场景中。这样,当用户点击`CCMenuItemToggle`时,对应的`onMusicEnable`函数会被调用。 在`onMusicEnable`函数中,通过类型转换...

    Cocos2D-x游戏开发之菜单事件响应demo

    CCMenu *menu = CCMenu::create(startItem, quitItem, NULL); menu->alignItemsVertically(); addChild(menu); ``` 这里,`CCMenuItemFont::create`用于创建文本按钮,`this`表示当前类(通常是继承自`CCLayer`的类...

    cocos2d-x模态对话框的实现 vs2008实现 带工程

    - 考虑触摸事件的穿透问题,避免底层节点接收到不应该有的触摸事件。 通过这个工程,开发者可以学习到如何在Cocos2d-x中实现模态对话框,理解其背后的机制,并结合VS2008进行实际的项目开发。同时,这也是一个很好...

    菜单用于ccscrollview

    在Cocos2d-x中,`CCMenu` 类提供了创建和管理这些控件的功能。你可以通过添加`CCMenuItem` 的实例到菜单中来创建一个按钮,每个`CCMenuItem` 可以关联一个回调函数,当用户点击该按钮时,对应的函数会被调用。 接...

    cocos2dx简单布局文件

    在Cocos2d-x中,可以使用CCLabel或者CCMenuItem类来创建菜单项,并使用CCMenu类来组合和管理这些菜单项。这个文件的内容可能被读取并解析,然后动态生成相应的菜单界面。 UI设计与代码分离的好处: 1. **设计与代码...

    Cocos2D-X2.2.3学习笔记5(UI系统)

    `CCMenu`类则用于管理一组`CCMenuItem`,它可以自动排列和对齐这些元素,方便创建菜单布局。 Cocos2D-X 2.2.3中还引入了`CCLabelTTF`和`CCLabelBMFont`来显示文本。`CCLabelTTF`支持TrueType字体,可以动态调整文字...

    Cocos2d-x UI开发之菜单类使用实例

    `CCMenu`类是所有菜单项的容器,它是一个特殊的`CCLayer`,可以添加和排列多个`CCMenuItem`。在示例中,`CCMenu`接收一组菜单项并使用`alignItemsHorizontallyWithPadding`方法将它们水平对齐,其间填充10像素的间距...

    Cocos2d-x 3.2 大富翁游戏项目开发-第十五部分 升级地块

    Cocos2d-x提供了丰富的UI组件,如`CCMenu`、`CCMenuItem`等,可以方便地创建交互式界面。 4. 事件处理:当玩家选择升级地块时,我们需要监听UI元素的点击事件,并调用地块的升级方法。Cocos2d-x的事件系统可以轻松...

    cocos2dx3.0 英雄难过棍子关源码

    `CCMenuItem`和`CCMenu`类提供了创建菜单和按钮的功能,通过监听按钮事件,可以响应用户的操作,如开始新游戏、暂停游戏等。 四、得分与游戏进度 游戏的得分系统和进度保存通常涉及到数据持久化。cocos2dx提供了...

    cocos2d-x游戏开发系列教程-坦克大战游戏关卡选择场景的编写上

    cocos2d-x提供了丰富的API来处理这些任务,例如`CCDirector`用于控制游戏画面,`CCSprite`用于显示图像,`CCLabel`用于创建文本标签,`CCMenu`和`CCMenuItem`用于创建菜单和按钮。 接下来,我们将创建一个新的C++类...

    cocos2d_api_0.99.zip

    - **CCMenu**和**CCMenuItem**: 创建交互式菜单,常用于游戏的控制界面。 - **CCParticleSystem**: 实现粒子系统,用于创建火焰、烟雾、星光等视觉特效。 五、学习与实践 使用cocos2d_api_0.99的API文档,开发者...

    cocos2dx 学习资料

    你可以使用`CCMenu`类来创建菜单,并通过`CCMenuItem`的子类添加菜单项。例如,`CCMenuItemLabel`用于创建带有文本的菜单项,`CCMenuItemSprite`则可以使用精灵作为菜单项。菜单的布局可以通过调整每个菜单项的位置...

Global site tag (gtag.js) - Google Analytics