通过ToLua 解析商城物品

本文介绍了一种使用Lua脚本在Unity环境中读取JSON文件,并将数据动态加载到UI界面的方法。通过cjson库解析JSON路径,实例化预制件并填充UI元素,如图片、按钮和文本组件,实现数据驱动的游戏UI展示。
---
--- Generated by EmmyLua(https://github.com/EmmyLua)
--- Created by dingjiao2hantian.
--- DateTime: 2019/9/21 0021 9:13
---
require("UnityUtil")
local  Json={}
local  cjsons=require("cjson")
function  Json:OnStart()
     cont=self.content.transform
    local  jsonpath=System.IO.File.ReadAllText(UnityEngine.Application.dataPath.."/Lua/numbers.json")
    local  path=cjsons.decode(jsonpath)
    for i, v in pairs(path) do
        local   prefab=Resources.Load("imgs")
        local  instantiate=GameObject.Instantiate(prefab,cont):GetComponent(typeof(UI.Button))
        img=instantiate.transform:Find("wp"):GetComponent(typeof(UI.Image))
        img.sprite=Resources.Load(v.imgs,typeof(UnityEngine.Sprite))
        names=instantiate.transform:Find("name"):GetComponent(typeof(UI.Text))
        names.text=v.name
        jishan=instantiate.transform:Find("jieshao"):GetComponent(typeof(UI.Text))
        jishan.text=v.JS
        price=instantiate.transform:Find("Prices"):GetComponent(typeof(UI.Text))
        price.text=v.Price
        --找到InputText 的 text
        Images=GameObject.Find("Image"):GetComponent(typeof(UI.Image))
        instantiate.onClick:AddListener(function() clicks(instantiate) end)
    end
end
function  clicks(img)
--print(img.transform:Find("wp"):GetComponent(typeof(UI.Image)).sprite)
    print(123)
    Images.sprite=img.transform:Find("wp"):GetComponent(typeof(UI.Image)).sprite
end

return Json

代码写的比较啰嗦 是个大概的模板


在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值