UI管理
介绍
UNIHper中将UI分为UI实体和UI脚本两部分,脚本继承自Monobehaviour组件,在运行时将挂载到UI实体上进行UI相关的交互控制。
UI页面实体
UI页面实体就是一个预制体,可以通过右键菜单Create/UIPage 预制体
进行创建,或者由美工提供。Note: 页面预制体需要加入资源管理系统
UI脚本
UI脚本组件可以通过右键菜单Create/UNIHper/UIScript
进行创建,对应的UI会自动注册写入UI配置文件,对应查找的资源名为脚本名,若资源名称需要自定义,则需要更改对应配置文件的asset属性
UI配置文件
UI配置文件路径为Resources/UNIHper/uis.json
{
// 持久层UI 整个程序声明周期内均存在
"Persistence": {
"WatermarkUI": {
"type": "Normal", // UI类型
"asset": "WatermarkUI", // 资源名称
"canvas": "CanvasDefault" // 指定附加到的 Canvas 结点
}
},
// 场景相关UI 会随着场景销毁而销毁
"SceneEntry": {
"IdleUI": {} // 默认type为Normal, asset为IdleUI canvas为CanvasDefault
}
}
UI类型
Standalone 处于该种类型的资源,同时只会显示一个UI,显示时会隐藏其他Standalone类型UI。
Normal 处于该种类型的资源,显示和隐藏完全由用户自己控制显示和隐藏
Popup 处于该种类型的资源,显示UI时,会自动置于顶层显示,其他的UI会自动降层。
UI的显示及隐藏
using System.IO;
using UnityEngine;
using UNIHper;
public class SceneEntryScript : SceneScriptBase
{
// Called once after scene is loaded
private void Start()
{
// 显示界面IdleUI
Managements.UI.Show<IdleUI>();
// 隐藏界面IdleUI
Managements.UI.Hide<IdleUI>();
// 切换显示界面IdleUI
Managements.UI.Toggle<IdleUI>();
}
}
Last updated