Files
MinFt/Client/Assets/Scripts/UIExtend/ControlTextSize.cs
Liubing\LB 3d8d4d18f3 first commit
先修复一下,错误的场景

删除不必要的钓场资产

修复into场景

update:更新meta文件,修复报错

update:修复资源

修复第一章节建造

修复建造第三章

update:删除多余内容

update:更新README.md

update:还原图标

update:更新README

update:更新配置
2026-04-28 02:17:22 +08:00

105 lines
2.4 KiB
C#

using TMPro;
using UnityEngine;
using UnityEngine.UI;
[RequireComponent(typeof(TMP_Text))]
public class ControlTextSize : MonoBehaviour, ILayoutElement
{
private TMP_Text curTxt;
private bool cached = false;
public float maxPreferredWidth = 0f;
public float maxPreferredHeight = 0f;
public float flexibleHeight
{
get
{
cacheReferences();
return curTxt.flexibleHeight;
}
}
public float flexibleWidth
{
get
{
cacheReferences();
return curTxt.flexibleWidth;
}
}
public int layoutPriority
{
get { return 1; }
}
public float minHeight
{
get
{
cacheReferences();
return curTxt.minHeight;
}
}
public float minWidth
{
get
{
cacheReferences();
return curTxt.minWidth;
}
}
public float preferredHeight
{
get
{
cacheReferences();
if (Mathf.Approximately(maxPreferredHeight, 0f))
{
return curTxt.preferredHeight;
}
else
{
return curTxt.preferredHeight > maxPreferredHeight ? maxPreferredHeight : curTxt.preferredHeight;
}
}
}
public float preferredWidth
{
get
{
cacheReferences();
if (Mathf.Approximately(maxPreferredWidth, 0f))
{
return curTxt.preferredWidth;
}
else
{
return curTxt.preferredWidth > maxPreferredWidth ? maxPreferredWidth : curTxt.preferredWidth;
}
}
}
public void CalculateLayoutInputHorizontal()
{
cacheReferences();
}
public void CalculateLayoutInputVertical()
{
cacheReferences();
}
private void cacheReferences()
{
if (!cached)
{
curTxt = gameObject.GetComponent<TMP_Text>();
cached = true;
}
}
}