主UI模块
更新时间:2024-10-09
介绍当前客户端的数资分布,包含主界面的UI和通用数资。
1.客户端UI
底座提供了通用的UI组件接口规范与客户端的UI展示策略,终端包含移动端,PC端和VR端。

1.1 资源路径

| Assets/Prefabs/ | 描述 |
|---|---|
| Common | 通用目录 |
| Mobile | 移动端UI资源 |
| PC | PC端UI资源 |
| VR | VR端UI资源 |
1.2 UI Canvas
路径:Assets/Prefabs/<平台>/UI/Canvas.prefab 创建时机: Hotfix.DllMain.Main()

结构:

1.3 UI的制作
需要在制作好的UI预制体上面挂一个BaseUI的脚本

PlayerCanMove :当前打开UI的情况下是否允许玩家移动 HaseModel:当前UI打开的时候是否显示背景图片 UIMode : UI的类型 打开之后分别挂载到对应的parent上面 OnOutsideClick : 选定区域内触发的额外事件 可以自行添加 VRUiLocationType : VR端的几种自由度模式 2Dof 3Dof 6Dof
1.4 UI的打开和关闭
打开UI -> Baidu.Meta.MCK.UI.UIManager.Instance.Open () 关闭UI -> Baidu.Meta.MCK.UI.UIManager.Instance.Close ()
InternalAddressable.InstantiateAsync(AssetsCenter.Instance.GetAssetsPath("UI/BaiduMapNavigationPage.prefab")).Completed += obj =>
{
Baidu.Meta.MCK.UI.UIManager.Instance.Open(obj.Result);
};备注:AssetsCenter.Instance.GetAssetsPath(path)可以获取相对Assets/Prefabs/<平台>/path路径
2.主要UI资源
2.1 新手引导
| 端 | Prefab | 创建时机 |
|---|---|---|
| Mobile,PC,VR | BeginnerGuideWindow1.prefab,BeginnerGuideWindow2.prefab,XiaoduGuideWindow.prefab | Hotfix.Standard.Balcony::ShowGuide如果需要屏蔽可直接跳过这部分流程。![]() |
2.2 主UI

| 端 | Prefab | 创建时机 |
|---|---|---|
| Mobile,PC | MainUIPanel.prefab | InitMainUIPhone 1. 新手引导完成 Hotfix.Standard.MainLogic::OnAllGuideComplete。![]() ![]() |
2.3 通用提示窗口

| 端 | Prefab | 示例代码 |
|---|---|---|
| Mobile,PC, VR | ServiceRetaining.prefab | 如下 |
InternalAddressable.LoadAssetAsync<GameObject>(AssetsCenter.Instance.GetAssetsPath("UI/ServiceRetaining.prefab")).Completed += (AsyncOperationHandle<GameObject> obj) =>
{
var go = GameObject.Instantiate(obj.Result);
CommonRemindWindow window = go.GetComponent<CommonRemindWindow>();
window.Init(Lang.Instance.FormatString("warm_prompt"), "确认回到出生点?",
RemindWindowType.TwoChoosen, Lang.Instance.FormatString("cancel"),
Lang.Instance.FormatString("confirm"));
Baidu.Meta.MCK.UI.UIManager.Instance.Open(go);
window.onConfirmClick.AddListener(() =>
{
});
window.onCancelClick.AddListener(() =>
{
});
};

