using System.Collections.Generic;
|
using Cysharp.Threading.Tasks;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
//特权卡激活成功
|
public class PrivilegeActiveCardWin : UIBase
|
{
|
[SerializeField] Transform[] tqLines;
|
[SerializeField] Text[] tqTexts;
|
|
[SerializeField] RectTransform bg;
|
|
|
protected override void OnPreOpen()
|
{
|
if (functionOrder == 0)
|
return;
|
int type = functionOrder;
|
var lines = InvestModel.Instance.GetPrivilegeLins(type);
|
for (int i = 0; i < tqLines.Length; i++)
|
{
|
if (i < lines)
|
{
|
tqLines[i].SetActive(true);
|
tqTexts[i].text = Language.Get($"PrivilegeCard{type}_{i + 1}");
|
}
|
else
|
{
|
tqLines[i].SetActive(false);
|
}
|
}
|
}
|
|
protected override void NextFrameAfterOpen()
|
{
|
ForceRefreshLayout().Forget();
|
}
|
|
/// <summary>
|
/// 强制刷新Layout,解决嵌套Layout和ContentSizeFitter的重叠问题
|
/// </summary>
|
async UniTask ForceRefreshLayout()
|
{
|
LayoutRebuilder.ForceRebuildLayoutImmediate(bg);
|
await UniTask.DelayFrame(2);
|
LayoutRebuilder.ForceRebuildLayoutImmediate(bg);
|
}
|
}
|