Unity3D之UI框架

本文总结了Unity3D中的UI框架设计,通过Prefab和Json文件管理UI,利用单例模式避免重复实例化,以节省游戏资源。在实践中,强调了Json变量名与代码变量名一致的重要性。
摘要由CSDN通过智能技术生成

每个游戏的有UI,合理的UI管理可以更加节省游戏资源。本篇是对UI框架的总结。

  UI框架就是把所有的UI做成Prefab存进Json文件中,等触发的时候再通过点击事件实例化出相应的UI预制体。这样做的好处是,游戏面板上什么都没有,用到什么就生成什么,为了避免重复生成,采用单例的方式来实现。

  一、搭建UI界面。

 

 

 二、写代码:

 

复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
//转化枚举信息给json解析提供值
[Serializable]//序列化信息(把对象转化为文本,转换为二进制)
public class UIPanelInfo : ISerializationCallbackReceiver//序列化接口
{
    [NonSerialized]
    public UIPanelType type;//定义枚举
    public string PanelTypeString;
    public string path;//json解析时要把该类信息都传递过去,所以path信息也要获取

    public void OnAfterDeserialize()//反序列化之后执行的内容就是文本变对象
    {
           UIPanelType typeinfo=(UIPanelType)Enum.Parse(typeof(UIPanelType),PanelTypeString);
           type = typeinfo;
    }
    public void OnBeforeSerialize()
    {
       
    }
}
复制代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值