1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- using UnityEngine;
- using FairyGUI;
- using Cysharp.Threading.Tasks;
- using System.ComponentModel;
- namespace ET.Client
- {
- [Event(SceneType.Client)]
- public class AppStartInitFinish_CreateLoginUI: AEvent<EventType.AppStartInitFinish>
- {
- protected override async ETTask Run(Scene scene, EventType.AppStartInitFinish args)
- {
- Log.Debug("to load login ui.");
- var ass = await YooAssetProxy.LoadAssetAsync<TextAsset>("FGUI_Login_fui");
- UIPackage.AddPackage(ass.GetAssetObject<TextAsset>().bytes, "Login", LoadPackageInternalAsync);
- var view = UIPackage.CreateObject("Login", "Login").asCom;
- view.name = "Login";
- GRoot.inst.AddChild(view);
- InitLogin(scene, view);
- var preView = GRoot.inst.GetChildAt(0);
- GRoot.inst.RemoveChild(preView, true);
- UIPackage.RemovePackage("CheckForResUpdate");
- }
- /// <summary>
- /// 加载资源的异步委托
- /// </summary>
- /// <param name="name">注意,这个name是FGUI内部组装的纹理全名,例如FUILogin_atlas0</param>
- /// <param name="extension"></param>
- /// <param name="type"></param>
- /// <param name="item"></param>
- private static async void LoadPackageInternalAsync(string name,
- string extension, System.Type type, PackageItem item)
- {
- var tex = await YooAssetProxy.LoadAssetAsync<Texture>($"FGUI_{name}");
- item.owner.SetItemAsset(item, tex.GetAsset<Texture>(), DestroyMethod.Unload);
- }
- private void InitLogin(Scene scene, GComponent view)
- {
- var account = view.GetChild("input_name");
- var password = view.GetChild("input_password");
- var btn = view.GetChild("Btn_Login");
- btn.onClick.Add(()=>
- {
- view.GetChild("img_tips").visible = false;
- view.GetChild("txt_tips").visible = false;
-
- btn.enabled = false;
- LoginHelper.Login(scene, account.text, password.text).Coroutine();
- });
- }
- }
- }
|