killapp/Assets/Scripts/UI/Pages/SelfPage/SelfQrcodePage.cs

46 lines
1.6 KiB
C#
Raw Normal View History

2026-06-08 08:55:10 +08:00
using System.Collections;
using System.Collections.Generic;
using Kill.Managers;
2026-06-12 16:07:27 +08:00
using Kill.Network;
2026-06-08 08:55:10 +08:00
using Kill.UI.Components;
using UnityEngine;
using UnityEngine.UI;
namespace Kill.UI.Pages
{
public class SelfQrcodePage : MonoBehaviour
{
public Text usernameText;
public Text emailText;
public Text userIdText;
public Button backButton;
public QRCodeGenerator qrCodeGenerator;
2026-06-12 16:07:27 +08:00
public Image avatarImage;
public async void Init(UserInfo userInfo)
2026-06-08 08:55:10 +08:00
{
UIManager.Instance.RegisterBackAction(OnBack);
backButton.onClick.RemoveAllListeners();
backButton.onClick.AddListener(OnBack);
usernameText.text = userInfo.username;
emailText.text = userInfo.email;
userIdText.text = $"User ID: {userInfo.id}";
qrCodeGenerator.Generate(userInfo.id);
2026-06-12 16:07:27 +08:00
if (string.IsNullOrEmpty(userInfo.avatar))
{
avatarImage.gameObject.SetActive(false);
avatarImage.transform.parent.GetComponent<Mask>().showMaskGraphic=true;
}
else
{
await NetworkCtrl.Instance.LoadImageToUIImageAsync(userInfo.avatar, avatarImage);
avatarImage.gameObject.SetActive(true);
avatarImage.transform.parent.GetComponent<Mask>().showMaskGraphic=false;
}
2026-06-08 08:55:10 +08:00
}
public void OnBack()
{
UIManager.Instance.RegisterBackAction(GetComponentInParent<SelfPage>().OnBack);
Destroy(gameObject);
}
}
}