Unity 不用重新打包,通过修改StreamingAssets内配置,替换项目内部的UI

因为多次遇到需要变更UI风格需求,重新打包比较费时麻烦,所以写了一个替换UI工具
链接:工具下载地址
提取码:hl3w

使用方法:

LoadUI使用文档
编辑器模式下,可不挂载脚本
打包前在初始场景新建GameObject添加<LoadUIData>组件
UI存放默认路径:StreamingAssets/Fluency_UI,需修改在LoadUIData脚本73行

为方便开发人员测试,<LoadData>组件,可以在所有场景挂载。

'@UIData'配置表目录放在上述设置文件夹下
格式如下
后缀:'.json'
内容示例:
{
    "UIData":[
        {
            "name":"panel1",
            "suffix":".png",
            "wildth":1920,
            "height":1080
        },
        {
            "name":"panel2",
            "suffix":".png",
            "wildth":1270,
            "height":820
        }
    ]
}

图片文件
放置在上述目录下,加载顺序会以配置表内设置,由上到下依次加载,与后续使用索引一致

在Image对象上添加<AddPicture>组件
在Load Image ID 内输入对应UI索引

如果UI有<Button>组件,则选择UI Type为Button,
如果在<Button>组件上设置了Transition为Sorite Swap类型,
则在Hing、Pres、Dis中输入对应UI索引,无对应图片则输入-1

如遇到需要在程序运行中改变图片信息,请调用AddPicture.ReplacePicture()

Bug注意:
如果场景中UI图片丢失,请尝试以下解决方法
1.右键Hierarchy面板/Fluency/LoadPictureSetting(Ctrl+Shift+M)
2.选择添加有<AddPicture>组件的Image 点击Refresh刷新 然后Ctrl+S
3.在挂载<LoadUIData>的脚本属性面板,点击刷新按钮


  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Unity是一种跨平台的游戏引擎,很多游戏都使用它来开发。在Unity中,打包后读取StreamingAssets是一种常见的方式,它可以让开发者将数据文件一起打包到应用程序中,再通过代码来读取这些数据文件。 UnityStreamingAssets文件夹是存储相关文件的一个文件夹,所有在该文件夹中的文件都将被打包到应用程序中。为了读取这些文件,可以使用Unity的WWW类或者UnityWebRequest类。这两个类都可以从本地文件系统或者网络地址读取文件,然后将文件内容转化为字符串或字节流。 如果想要从StreamingAssets中读取文件,可以使用以下代码: ``` string filePath = Path.Combine(Application.streamingAssetsPath, "FileName.extension"); ``` 其中FileName.extension是文件名和文件类型,可以是txt、json、xml等等。读取StreamingAssets中的文件可以使用以下代码: ```csharp IEnumerator ReadStreamingAssetsFile(string path) { string filePath = Path.Combine(Application.streamingAssetsPath, path); UnityWebRequest www = UnityWebRequest.Get(filePath); www.SendWebRequest(); while (!www.isDone) { yield return null; } if (!www.isNetworkError && www.isDone) { byte[] bytes = www.downloadHandler.data; string jsonString = Encoding.UTF8.GetString(bytes); //Do something with the json string } } ``` 这是一种通过UnityWebRequest类来从StreamingAssets中读取文件的方法。先根据文件路径获取完整路径,然后使用UnityWebRequest来获取文件内容,并将其转化为字节数组或字符串,最后进行处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贪小心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值