Files
aibis-dream/Assets/Scripts/UI/Form/AbsFormItem.cs
T
dingyuntian 9f20ef52d8 UI工具翻新
1. 增加UI工具
2. 增加设置页面
3. GameLoop更新
4. 导入ActionKit工具
2025-04-21 18:53:30 +08:00

57 lines
1.1 KiB
C#

using System;
using TMPro;
using UnityEngine;
using UnityEngine.Events;
namespace AibisDream
{
/// <summary>
/// 表单项父类
/// </summary>
public abstract class AbsFormItem : MonoBehaviour
{
#region 数据部分
public string prop;
public string label;
public abstract FieldType FieldType { get; }
#endregion
#region 索引部分
private TMP_Text _labelRef;
public UnityEvent<string, string> OnValueChanged;
#endregion
private void Awake()
{
InitItem();
}
/// <summary>
/// 初始化FormItem
/// </summary>
private void InitItem()
{
// label设置
_labelRef = transform.Find("Label").GetComponent<TMP_Text>();
_labelRef.text = label;
// field设置
InitField();
}
protected abstract void InitField();
public abstract void SetValue(string value);
}
public enum FieldType
{
Input,
Slider,
Select,
Radio
}
}