关于Lua的Unity UI面向过程编程模板
该模板基于xLua实现,对xLua不熟悉的可以去了解下。改用别的Lua热更方案也容易。
先发下示例地址
窗口如下
窗口左侧是一个列表,选择列表中的项,右边会显示当前选择项的内容。
下面是实现窗口功能的Lua文件。
require 'item' --列表项
local ue = CS.UnityEngine
--窗口
Panel = {
--Awake事件
--data是一个table,其中包含该UI的gameObject和注册的UI组件,也可以增加自己的变量
Awake = function (data)
data.list = {};--保存生成的Item的data
local go = ue.Resources.Load('Item')
for index=1,3 do
local item = ue.Object.Instantiate(go)
item.transform.parent = data.leftView.transform
item.transform.localScale = ue.Vector3.one
data.list[index] = item:GetComponent('