一、控件

控件基类

UIWidget:所有UI控件的基类
addChild:添加UIWidget类型的节点

addRenderer:添加CCNode类型的节点

所有UIWidget,都可以设置成触摸setTouchEnable(true)

setTouchEnable(true)
addTouchEventListener(CCObject* target,SEL_TouchEvent selector):设置触摸处理
setName:设置名字
getRect:获取尺寸

scale9:9宫格相关东西,拼接成大图

setScale9Enabled(true);
setSize(size);

UIButton:

备注:按钮
setPressedActionEnabled:添加按下放大动画
addTouchEventListener(this, toucheventselector(UIButtonTest::touchEvent));

UITextButton

备注:按钮,按钮上面带文字
setText:设置显示内容

UICheckBox

备注:CheckBox,不解释
addEventListenerCheckBox:选择效果变化触发方法

UISlider

备注:滑动条
loadBarTexture:设置背景长条纹理
loadSlidBallTextures:设置滚球纹理
loadProgressBarTexture:设置进度条纹理
addEventListenerSlider:进度变化调用,getPercent获取值(0~100)
setCapInsets(CCRectMake(0, 0, 0, 0));被设置scale9时,需要调用

UILoadingBar

备注:进度条,与滑动条的区别在于没有滑动按钮
setTexture:设置纹理
setPercent:设置进程(0~100)
setDirection(LoadingBarTypeRight):默认从左到右
setCapInsets(CCRectMake(0, 0, 0, 0));被设置scale9时,需要调用

UILabelAtlas

备注:图片文字控件
setProperty("1234567890", "cocosgui/labelatlas.png", 17, 22, "0")

UITextArea

备注:文字区域控件,显示大段换行文字
setTextAreaSize:设置显示区域
setTextHorizontalAlignment(kCCTextAlignmentCenter):设置显示模式
setText:设置内容

UITextField

备注:输入法控件
setPlaceHolder:设置无内容时的显示
addEventListenerTextField:设置回调
setMaxLengthEnable:字数限制开关
setMaxLength:字数限制个数
setPasswordEnable:密码模式开关
setPasswordStyleText(“*”):密码显示替代符

UILayout(panel)

备注:容器
setSize:大小
setBackGroundColorType:抹色类型(支持均匀、梯度)
setBackGroundColor:抹色的色值
setClippingEnabled:图片背景开关
setBackGroundImage:图片
setBackGroundImageScale9Enabled:9碎片拼接开关
setBackGroundImage:9碎片纹理
setLayoutType(LAYOUT_LINEAR_VERTICAL);设置陈立方式
//陈立参数
UILinearLayoutParameter* lp1 = UILinearLayoutParameter::create();
button->setLayoutParameter(lp1);
lp1->setGravity(LINEAR_GRAVITY_CENTER_HORIZONTAL);
lp1->setMargin(UIMargin(0, 5, 0, 10));

UIScrollView

备注:滚动容器(任意UIWidget类型)它以左上角为锚点
setBounceEnabled:弹跳开关,拉过了之后,可以弹回来
setInnerContainerSize:设置内部实际大小,必须大于等于size
setDirection(SCROLLVIEW_DIR_HORIZONTAL):设置滚动方向
addChild:UIWidget都可以

UIPageView

备注:翻页容器(必须UILayout)
addPage:添加UILayout对象
getPage:获取当前页数
addEventListenerPageView:回调方法
case PAGEVIEW_EVENT_TURNING:
UIPageView* pageView = dynamic_cast<UIPageView*>(pSender);

UIListView

备注:同UIScrollView(只能UILayout)
setDirection(LISTVIEW_DIR_HORIZONTAL);:朝向
setBackGroundImageScale9Enabled:背景
setBackGroundImage:背景
addEventListenerListView:回调方法(完成初始化时,list发生变化时)
initChildWithDataLength:设置数据个数
addChild:只能添加UILayout类型
getUpdateDataIndex:获取更新的索引值
getUpdateChild:获取更新项
setUpdateSuccess:设置更新状态
(不用设置listView内数据的总尺寸大小)

UIDragPanel

备注:拖拽容器(任意UIWidget)
setBackGroundImageScale9Enabled
setBackGroundImage
setBounceEnabled:弹跳开关,拉过了之后,可以弹回来
setSize:设计显示大小
setInnerContainerSize:设置实际大小

UINodeContainer

备注:CCNode容器,与CCNode挂钩
addCCNode:添加各种CCNode,如CCSprite
addRenderer:也可以添加CCNode,每个UIWidget拥有

二、程序使用

//UI层创建
UILayer* ul = UILayer::create();
UILayout* widget = dynamic_cast<UILayout*>(GUIReader::shareReader()->widgetFromJsonFile("ui_file/gameInfo_1.json"));
Ul->addWidget(widget);
//获取
UIImageView * lifeBar = (UIImageView *)ul->getWidgetByName("lifeBar");
//释放
onExit或析构中需调用(否则内存泄露)
GUIReader::shareReader()->purgeGUIReader();
DictionaryHelper::shareHelper()->purgeDictionaryHelper();
ActionManager::shareManager()->purgeActionManager();

cocoStudio UI编辑器 学习总结的更多相关文章

  1. CocoStudio UI 编辑器的使用

    详细教程:http://www.cocoachina.com/bbs/read.php?tid=161567 Table of Contents 1 游戏中的 UI 1.1 基于 Cocos2d-x ...

  2. 使用 CocoStudio UI 编辑器实现《乱斗堂》设置界面

    由于是引用别人的,所以直接贴上地址了.http://www.cocoachina.com/bbs/read.php?tid=164820&fpage=7 1 游戏中必不可少的 UI 元素    ...

  3. cocostudio ui编辑器 使用心得

    1 c++包含路径 2九宫格设置 cocostudio ui编辑器设置九宫格x,y,w,h是从图片左上角开始测量,然后调整尺寸就行了. 2.  如果点了自适应  panel会在加载json的时候被设置 ...

  4. Cocos2d-x 3.2 学习笔记(十三)CocoStudio UI编辑器 by 保卫萝卜

    关于编辑器部分研究的不多,但基本能使用.最近时间不是很多,因此写blog的次数越来越少了.自从玩了<保卫萝卜>时候一直想要写一下,同时练下手感.基本的结构已经写的差不多了,主要完善写UI和 ...

  5. [使用经验]cocostudio UI编辑器的裁剪

    日志-2015/03/16 描述:在程序使用UI编辑器导出文件的时候,该panel中大于panel的部分都没有显示出来,例如人物,一些特效等 原因:UI编辑器panel都勾上了裁剪 解决:在编辑器中把 ...

  6. [cocos2dx笔记011]使用Cocostudio UI编辑器

    本文地址:http://www.cppblog.com/zdhsoft/archive/2014/07/19/207715.html 笔记汇总:http://www.cppblog.com/zdhso ...

  7. UI编辑器

    本篇教程通过制作捕鱼达人的启动界面来说明CocoStudio UI编辑器的用法.先看看效果图 好了,下面一步一步的动手做吧! 1.打开软件 2.新建项目 依次打开软件主界面左上角菜单栏的:“文件”-- ...

  8. laya的UI编辑器

    //加载一个图集 Laya.loader.load("res/atlas/comp.json",Handler.create(this,this.onLoaderComp), Ha ...

  9. 超棒的 15 款 Bootstrap UI 编辑器

    自从 2011 年 Mark Otto 和 Jacob Thornton 开发了  Bootstrap,我们第一次接触并熟知了 Bootstrap .这些都归功于  Twitter!从那以后,它就非常 ...

随机推荐

  1. isMobile 一个简单的JS库,用来检测移动设备

    点这里 github地址:https://github.com/kaimallea/isMobile Example Usage I include the minified version of t ...

  2. (转)Android: NDK编程入门笔记

    转自: http://www.cnblogs.com/hibraincol/archive/2011/05/30/2063847.html 为何要用到NDK? 概括来说主要分为以下几种情况: 1. 代 ...

  3. UVA 1362 Exploring Pyramids 区间DP

    Archaeologists have discovered a new set of hidden caves in one of the Egyptian pyramids. The decryp ...

  4. linux下ssh/scp无密钥登陆方法

    一.双方机器都是root用户登陆方法 A为本地主机(即用于控制其他主机的机器) ;B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;A和B的系统都是Linux 在A ...

  5. 15条规则解析JavaScript对象布局(__proto__、prototype、constructor)

    大家都说JavaScript的属性多,记不过来,各种结构复杂不易了解.确实JS是一门入门快提高难的语言,但是也有其他办法可以辅助记忆.下面就来讨论一下JS的一大难点-对象布局,究竟设计JS这门语言的人 ...

  6. 李洪强iOS面试总结之- FMDB

    n什么是FMDB pFMDB是iOS平台的SQLite数据库框架 pFMDB以OC的方式封装了SQLite的C语言API p nFMDB的优点 p使用起来更加面向对象,省去了很多麻烦.冗余的C语言代码 ...

  7. 【PSR规范专题(5)】PSR-4 改进后的自动加载规范

    本文转自: https://github.com/PizzaLiu/PHP-FIG/blob/master/PSR-4-autoloader-cn.md 关键词 "必须"(&quo ...

  8. 禁用和启用链接(a元素|LinkButton)的js方法

    4 function disableLink(link) {5     //设置href属性6     link.href = "javascript:void(0);";7    ...

  9. angularjs transclude demo

    <!doctype html> <html lang="en" ng-app="expanderModule"> <head> ...

  10. asp.net收藏和设为首页的代码

    1:设为首页 <a href="javascript:void(0);" id="setHomePage" onclick="this.styl ...