using UnityEngine; using UnityEngine.UI; using TMPro; /// /// 自适应按钮组件 /// 功能:根据文本内容自动调整按钮宽度 /// 使用方法:将此脚本附加到包含TextMeshProUGUI组件的按钮上,然后调用SetText方法设置文本 /// public class AdaptiveButton : MonoBehaviour { // 配置参数 [Header("宽度限制设置")] [SerializeField] private float minWidth = 50f; // 最小宽度 [SerializeField] private float maxWidth = 500f; // 最大宽度 [SerializeField] private float padding = 20f; // 内边距补偿 [Header("调试信息")] [SerializeField] private bool enableDebugLog = true; // 是否启用调试日志 // 缓存的组件引用 private TextMeshProUGUI textComponent; // 文本组件 private RectTransform buttonRectTransform; // 按钮的RectTransform private Button buttonComponent; // 按钮组件 /// /// 初始化组件 /// private void Awake() { // 获取按钮组件 buttonComponent = GetComponent