ui所需要的一些lua接口

--按钮类

--获取名字
function obj:getName()
end

--获取宽度
function obj:getWidth()
end

--获取高度
function obj:getHeight()
end

--禁用启用
function obj:setEnabled(true)
end

--获取当前禁用启用状态
function obj:isEnabled()
end

--设置触摸开始时的回调函数
[email protected] {function} func 回调函数,此函数接受3个参数【用户数据(默认为nil)、屏幕坐标x、屏幕坐标y】
[email protected] {任意数据} arg 用户数据,默认为nil
function obj:setSelectScriptFunc(func, arg)
end

--设置触摸结束时的回调函数
[email protected] {function} func 回调函数,此函数接受3个参数【用户数据(默认为nil)、屏幕坐标x、屏幕坐标y】
[email protected] {任意数据} arg 用户数据,默认为nil
function obj:setUnSelectScriptFunc(func, arg)
end

--设置点击回调函数
[email protected] {function} func 回调函数,此函数接受3个参数【用户数据(默认为nil)、屏幕坐标x、屏幕坐标y】
[email protected] {任意数据} arg 用户数据,默认为nil
function obj:setClickScriptFunc(func, arg)
end

--设置默认图片
function obj:setDefaultSkin(url)
end

--设置点击时的图片
function obj:setClickSkin(url)
end

--设置禁用时的图片
function obj:setDisableSKin(url)
end

--设置字体信息
function obj:setFontInfo(fontname, fontsize)
end

--设置文本内容
function obj:setTextString(str)
end

--设置颜色
function obj:setColorHex(colorstr)
end

--=======================================================================================================================
--复选框类

--设置选中时的图片
function obj:setSelectSkin(url)
end

--返回复选框是否被选中
function obj:isChecked()
end

--设置当前选中状态
function obj:setChecked(flag)
end

--========================================================================================================================
--图片类

--设置是否需要移动
function obj:setNeedDoMove(flag)
end

--设置当滑动时的回调函数
function obj:setOnMoveScriptFunc(func, arg)
end

--设置图片资源
function obj:setPictureByUrl(url)
end

--设置图片缩放比例
function obj:setPictureScale(scale)
end

--获取图片缩放比例
function obj:getPictureScale()
end

--=========================================================================================================================

--高亮区域

--设置高亮区域信息,注:切记已设置过此控件宽高
[email protected] {number} bright_width 高亮区域宽度
[email protected] {number} bright_height 高亮区域高度
[email protected] {number} bright_posx 位置x
[email protected] {number} bright_posy 位置y
[email protected] {number} backopacity 蒙板透明度,默认0.5f(0 - 1.0之间,0为全透明)
function obj:setBrightInfo(bright_width, bright_height, bright_posx, bright_posy, backopacity)
end

--按指定的图片设置高亮区域
[email protected] {string} url 遮罩图片url
[email protected] {number} bright_posx 位置x
[email protected] {number} bright_posy 位置y
[email protected] {number} backopacity 蒙板透明度,默认0.5f(0 - 1.0之间,0为全透明)
function obj:setBrightByUrl(url, bright_posx, bright_posy, backopacity)
end

--========================================================================================================================
--进度条类

--设置进度条的图片
function obj:setProgressSkin(url)
end

--设置进度条背景
function obj:setBackGround(url)
end

--设置边距
function obj:setMargin(margin_left, margin_right, margin_top, margin_bottom)
end

--设置垂直
function obj:setVertical(vertical)
end

--设置进度条当前值
function obj:setValue(value)
end

--获取进度条当前值
function obj:getValue()
end

--在指定的时间,进度值变更(当调用此接口时,进度值立即变更,之后只是进度动画效果)
[email protected] {number} duration 持续时间,单位:秒
[email protected] {number} from 进度起始,0 - 100
[email protected] {number} to 进度结束值,0 - 100
[email protected] {function} func 动画播放完毕后的回调函数
function obj:progressFromTo(duration, from, to, func)
end

--获取当前变化的进度的当前值(显示所对应的值)
[email protected] {number} 返回当前实时进度(0 - 100)
function obj:getNowProgressValue()
end

--=====================================================================================================================
--文本框类

--设置垂直对齐方式
function obj:setVerticalAlignment(align)
end

--设置水平对齐方式
function obj:setHorizontalAlignment(align)
end

--获取文本内容
function obj:getTextString()
end

--获取所有文本高度
function obj:getAllTextHeight()
end

--=========================================================================================================================
--html富文本框类

--设置行间距
function obj:setLeading(leading)
end

--设置文本区域大小
function obj:setSize()
end

--附加文本,返回附加此文本导致增加的行数
[email protected] {string} text 要附加的html格式文本
[email protected] {number} 返回附加的文本所增加的行数(0 - N)
function obj:appendTextString(text)
end

--从原始内容开头开始,移除指定的内容
[email protected] {string} deletetext 从原始文本中要删除的内容
[email protected] {boolean} 移除成功返回true,失败返回false
function obj:removeTextFromBegin(deletetext)
end

--移除顶部指定数量的行
[email protected] {number} num 要移除的数量
[email protected] {boolean} 移除成功返回true,失败返回false
function obj:removeTopLine(num)
end

--获取行数量
function obj:getLineNum()
end

--==================================================================================================================================
--输入框类

--是否是密码
[email protected] {boolean}
function obj:isPassword()
end

--设为密码类型
[email protected] {boolean} ispassword 为true表示密码
function obj:setIsPassword(ispassword)
end

--设置无输入内容时的显示文本
[email protected] {string} text
function obj:setPlaceHolder(text)
end

--设置当按下回车键时的回调函数
[email protected] {function} func 当按下回车键时的回调函数,此函数接受1个参数【控件名】
function obj:setEnterScriptFunc(func)
end

--打开输入法
function obj:openIME()
end

--关闭输入法
function obj:closeIME()
end

--设置光标颜色
[email protected] {string} colorstr 颜色字符串
function obj:setCursorColorHex(colorstr)
end

--=====================================================================================================
--滚动文本类

--获取当前是否可滑动
[email protected] {boolean}
function obj:getCanMove()
end

--设置当前是否可滑动
[email protected] {boolean} moveflag 滑动标记
function obj:setCanMove(moveflag)
end

--滑动到顶部(对水平方式来讲,为最左边)
function obj:scrollToTop()
end

--滑动到底部(相对于水平方向, 为最右边)
function obj:scrollToBottom()
end

--=======================================================
--列表类

--设置行间距
[email protected] {number} lineboundary 行间距
function obj:setLineBoundary(lineboundary)
end

--获取行间距
[email protected] {number} return 返回行间距
function obj:getLineBoundary()
end

--设置行背景
[email protected] {string} url 资源url
function obj:setLineItemBackGround(url)
end

--设置选中时的行图片
[email protected] {string} url 资源url
function obj:setLineItemSelect(url)
end

--获取行高
function obj:getLineHeight()
end

--获取显示宽度(已经减去了边距)
function obj:getShowWidth()
end

--获取显示高度(已经减去了边距)
function obj:getShowHeight()
end

--是否为垂直模式
[email protected] {boolean}
function obj:isVertical()
end

--\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
--获取当前是否开启滑动对齐功能
--return {boolean}\
function obj:isScrollAlign()
end

--开启/禁用滑动对齐
[email protected] {boolean} flag
[email protected] {boolean} 返回之前的设置
function obj:setScrollAlign(flag)
end

--可否继续向顶部继续移动(对于水平方式来讲, 为向左)
[email protected] {boolean}
function obj:canMoveToTop()
end

--可否继续向底部移动(对于水平方式来讲, 为向右)
function obj:canMoveToBottom()
end

--设置自动滑动时,持续减速的比率
[email protected] {number} rate 比率,若小于0,则是持续减速;若大于0,则是持续加速;为等于0,则速度不变
function obj:setScrollDecelerateRate(rate)
end

--获取自动滑动时,持续减速的比率
[email protected] {number} 返回持续减速的比率
function obj:getScrollDecelerateRate()
end

--设置自动滑动完毕时,在多少时间内移动到指定位置(例如滑动结束后的回弹)
[email protected] {number} time 指定时间,单位:秒
function obj:setScrollBounceDuration(time)
end

--获取自动滑动完毕时,多久移动到指定位置
[email protected] {number} 返回移动时间,单位:秒
function obj:getScrollBounceDuration()
end

--设置滑动的越界比率(以高度或宽度为基准)
[email protected] {number} rate 设置滑动时的越界比率
function obj:setScrollLimitInSetRatio(rate)
end

--获取滑动的越界比率
[email protected] {number} 返回滑动的越界比率 \
function obj:getScrollLimitInSetRatio()
end

--在指定的时间内使内容容器移动到指定位置
[email protected] {number} time 时间,单位:秒
[email protected] {number} posx 坐标x
[email protected] {number} posy 坐标y
function obj:scrollToTargetPos(time, posx, posy)
end

--获取当前是否正在自动滑动
[email protected] {boolean} 若当前正在自动滑动,返回true,否则返回false
function obj:isAutoMove()
end

--设置对齐处理的项判定差值
[email protected] {number} alignvalue
function obj:setAlignValue(alignvalue)
end
--\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

--查找指定行中指定名称的控件
function obj:findLineControl(lineindex, controlname)
end

--获取当前选中的行号
[email protected] {number} 行号
function obj:getSelectLineIndex()
end

--创建新行,返回行号
function obj:createNewLine()
end

--获取行数量
[email protected] {number} 行的数量
function obj:getLineNum()
end

--获取指定的行对象
function obj:getLineItem(lineIndex)
end

--设置选中的指定的行此行为用户行为,不会触发相关的事件
function obj:setSelectLine(lineIndex)(此接口何用)
end

--检测指定的行是否处于显示的区域中
[email protected] {number} lineidx 行索引
[email protected] {boolean} 若此行处于显示区域,返回true,否则返回false
function obj:checkLineInShowArea(lineidx)
end

--移除指定索引的行
function obj:removeItemByIndex(index)
end

--使list中存在指定数量的行
function obj:setForRemain(num)
end

--清空所有行
function obj:clearAll()
end

--设置行被选中事件的回调函数
[email protected] handler 回调函数,接受1个参数【被点击的行号(有效行号为从0到maxnum-1)】
function obj:setLineSelectScriptFunc(func)
end

--设置当滑动时的回调函数
[email protected] {function} func 当滑动时的回调函数,此函数接受5个参数【用户数据(默认为nil)、内容区域在屏幕的当前x坐标、当前y坐标、上一次x坐标、上一次y坐标】
[email protected] {任意数据} arg 用户数据,默认为nil
function obj:setOnMoveScriptFunc()
end

--设置自动滑动停止时的回调函数
[email protected] {function} func 回调函数,此函数不接受参数
function obj:setAutoMoveStopScriptFunc(func)
end

--==================================================================
--面板类

--增加控件到面板中
[email protected] {LUiBase} obj 控件对象
[email protected] {boolean} 增加成功返回true,否则返回false
function obj:addControl(obj)
end

--查找指定名字的控件
function obj:findControl(controlname)
end

--从面板中移除指定的控件
[email protected] {LUiBase} uiobj 控件对象
function obj:removeControl(uiobj)
end

--从面板中移除指定名称的控件
[email protected] {string} controlname 控件名
function obj:removeControlByName(controlname)
end

--显示/隐藏面板
function obj:setVisible(flag)
end

--设置隐藏时的回调函数
[email protected] {function} func 当面板隐藏时的回调函数,此函数接受1个参数【面板名】
function obj:setHideEventScriptFunc(func)
end

--隐藏/显示指定名称的标签
[email protected] {string} labelname 标签名
[email protected] {boolean} visible 显示/隐藏
function obj:visableLabelPage(labelname, visible)
end

--================================================================================================

--UI管理器

--初始化ui管理器
[email protected] {EventLayer} rootlayer 根事件层
function obj:init(rootlayer)
end

--通过面板名查面板
[email protected] {string} panelname 面板名
[email protected] 若找到则返回面板对象{LPanel},否则返回nil
function obj:findPanelByeName(panelname)
end

--通过面名、控件名查找控件
[email protected] {string} panelname 面板名
[email protected] {string} controlname 控件名
[email protected] 若找到控件,则返回控件对象{LUiBase},否则返回nil
function obj:findControlByName(panelname, controlname)
end

--设置面板显示时的回调函数,此函数接受1个参数【面板名】
[email protected] {function} func 脚本回调函数
function obj:setOnPanelShowScriptFunc(func)
end

--设置面板隐藏时的回调函数,此函数接受1个参数【面板名】
[email protected] {function} func 脚本回调函数
function obj:setOnPanelHideScriptFunc(func)
end

--通过模板创建控件,并设置名字
[email protected] {string} panelname 模板面板名
[email protected] {string} controlname 模板控件名
[email protected] {string} setcontrolname 创建时使用的控件名,会把所创建的控件的名字设置为此值
[email protected] {LUiBase} 创建成功返回控件对象,失败返回nil
function obj:createControlFromTemplate(panelname, controlname, setcontrolname)
end

--通过模板创建面板,并设置面板名(会自动创建属于此面板的其他控件对象)
[email protected] {string} panelname 模板面板名
[email protected] {string} setpanelname 创建时使用的面板名,会把所创建的面板的名字设置为此值
[email protected] {LUiBase} 创建成功返回面板对象,失败返回nil
function obj:createPanelFormTempLate(panelname, setpanelname)
end

--加载面板
[email protected] {string} uifile ui文件路径
[email protected] {function} loadend_do 当加载完成后的回调函数
[email protected] 加载成功返回true,否则返回false
function obj:loadPanel(uifile, loadend_do)
end

--获取移动判定值
[email protected] {number} 返回之前的移动判定值
function obj:getMoveCompareValue()
end

--设置移动判定值(触摸开始、触摸移动事件时的距离差值大于此值则认为移动)
[email protected] {number} movedelay 移动判定值
function obj:setMoveCompareValue(movedelay)
end

--设置触摸开始时的hook回调函数,此时做hook处理(例如,当某个面板打开时,只要点击任何地方,此面板关闭)
[email protected] {function} func 当触摸开始时的回调函数,此函数接受3个参数【触摸开始时的控件所属的面板名、触摸开始的控件名、控件对象】
function obj:setSelectHookScriptFunc(func)
end

--设置触摸结束时的hook回调函数,此时做hook处理
[email protected] {function} func 当触摸结束时的回调函数,此函数接受3个参数【触摸结束时的控件所属的面板名、触摸结束的控件名、控件对象】
function obj:setUnSelectScriptFunc(func)
end

--取消触摸开始时的hook回调函数
function obj:unSetSelectHookScrptFunc()
end

--设置点击事件发生之前的回调函数
[email protected] {function} func 当ui控件点击事件发生时的回调函数,此函数接受3个参数【被点击的控件所属的面板名、被点击的控件名、控件对象】
function obj:setClickHookScriptFunc(func)
end

--取消点击事件的回调函数
function obj:unSetClickHookScriptFunc()
end

--禁用/启用所有面板的响应
[email protected] {boolean} enable 禁用/启用
function obj:setEnableAllVisible(enable)
end
--从UI管理器移除指定名称的面板
[email protected] {string} panelname 面板名
--增加面板到UI管理器中
[email protected] {LPanel} panel 面板对象
[email protected] {boolean} 返回true表示增加成功
function obj:addPanel(panel)
end

--从UI管理器中移除指定的面板
[email protected] {LPanel} panel 面板对象
function obj:removePanel(panel)
end

--从UI管理器移除指定名称的面板
[email protected] {string} panelname 面板名
function obj:removePanelByName(panelname)
end

ui所需要的一些lua接口,布布扣,bubuko.com

时间: 2024-08-10 23:30:39

ui所需要的一些lua接口的相关文章

使用zlib压缩解压并导出lua接口

网络游戏在前后端交换的过程中,有可能会有大量的数据,比如说游戏回放功能,这时最好是将数据压缩一下. 比较简单的数据压库就是zlib了. zlib官方文档,常用的函数都在这里了,解释很详细. 一  C++功能实现部分 下面将代码贴上来. 在ZipUtils中添加下面三个函数: // ZipUtils.h <pre name="code" class="cpp">typedef struct{ unsigned str_size; unsigned buf_

将iconv编译成lua接口

前一篇博文说了.在cocos2dx中怎么样使用iconv转码,这节我们将上一节中写的转码函数,做成一个lua接口.在lua脚本中使用. 网上能够下载到luaconv.可是编译的时候总是报错,所以自己写了一接口. 一 加入lua接口文件 // luaiconv.h #ifndef __LUA_ICONV_H__ #define __LUA_ICONV_H__ #include "tolua++.h" #include "tolua_event.h" #include

`cocos2dx 非完整` UI解析模块

昨天在cocos2dx的一个群里,遇到一位匿名为x的朋友询问的问题,是关于ui的.他使用c++写了不少的ui封装节点,用来实现游戏中的各种不同效果.然后现在想改用lua,于是尝试使用最小代价去复用自己的代码.当然这个是可以做到的,相信很多人都是知道方法的.今天的这篇文章就来谈谈ui部分的处理以及个人的见解. 我们都知道,cocos2dx引擎提供了ui工具cocostudio.后来改名为cocos engine.这些就不赘述了,很多人都会使用这款工具.新版本的工具我没有使用过,不过我承认是方便了很

简述C/C++调用lua中实现的自定义函数

1.首先说下目的,为什么要这么做 ? 正式项目中,希望主程序尽量不做修改,于是使用C/C++完成功能的主干(即不需要经常变动的部分)用lua这类轻量级的解释性语言实现一些存在不确定性的功能逻辑:所以,程序功能如有问题,只需对lua脚本作出修改,而修改脚本的好处是简单高效,改完脚本后重新执行程序便能看到效果.  2.具体怎么做? 一般来说,C/C++调用lua接口或是数据交互,首先要做的是包含lua相关操作的头文件以及lua库相关的头文件,然后调用接口创建lua环境.用操作栈的规则和lua交互数据

UI图像拖动更换

今天做一个拖动图像的demo,效果图如下: 1 拖动的类需要实现 IDropHandler, IPointerEnterHandler, IPointerExitHandler 这三个接口: 2 接受的类需要实现 IBeginDragHandler,IDragHandler,IEndDragHandler 这三个接口: 下面贴代码 Drag.cs using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; //

转让lua性能executeGlobalFunction

没有其他的,搞搞cocos2dx的lua文字,话lua这件事情在几年前学过一段时间.还曾对自己c++介面,我已经做了一些小东西.只是时间的流逝,模糊记忆. 拿起点功夫和成本.下面是我的一些经验. cocos2dx运用tolua++来制作的lua接口,tolua++文档不多,网上的一些文章也是答非所问,所以自己看代码是最佳学习途径. cocos2dx操作lua的类是CCLuaEngine,当中实现了载入与实行lua脚本.以及操作lua stack. LuaCocos2d.cpp非常主要,文件的开头

LUA脚本调用C场景,使用C API访问脚本构造的表

LUA调用C lua解析中集成了一些系统服务, 故脚本中可以访问系统资源, 例如, lua脚本可以调用文件系统接口, 可以调用数学库, 但是总存在一些lua脚本中访问不到的系统服务或者扩展功能, 如果这些系统服务或者扩展功能是使用C语言实现, 那么可以, 使用lua库的对C库的封装方法, 将其中功能封装成lua 接口, 这样脚本就调用这些lua接口调用这些功能. ------- 这种情况,是以lua脚本作为宿主程序. C调用LUA 另外一种场景,是C程序作为宿主程序, 调用LUA脚本, 例如将l

正确lua简单的扩展,可以加速相关C++数据。

很早的时候,我有一件事纠结.如果,我在这里C++打开界面脚本.使用C++其中一个目标,和.我的程序有很多不同的lua虚拟机.每个虚拟机与一个关联C++对象,它是多线程,那么如何快速应利用这个好时机lua_State针来定位到对象指针呢? 曾经我没有能力读懂lua的源代码,也能够说不知道关键部分怎样操作,我当时的做法.是利用临界区和std::map来解决这个问题的.非常明显这个方式的效率非常低非常低. 如今有能力读lua源代码了.当然有更有效的解决的方法了.由于在我们利用lua的过程中.lua_S

App开发:模拟服务器数据接口 - MockApi

App开发:模拟服务器数据接口 - MockApi 为了方便app开发过程中,不受服务器接口的限制,便于客户端功能的快速测试,可以在客户端实现一个模拟服务器数据接口的MockApi模块.本篇文章就尝试为使用gradle的android项目设计实现MockApi. 需求概述 在app开发过程中,在和服务器人员协作时,一般会第一时间确定数据接口的请求参数和返回数据格式,然后服务器人员会尽快提供给客户端可调试的假数据接口.不过有时候就算是假数据接口也来不及提供,或者是接口数据格式来回变动--很可能是客