Passion & UI

This commit is contained in:
SoulliesOfficial
2026-06-12 17:11:39 -04:00
parent 7bc1e1722c
commit 6d7ebc5825
3444 changed files with 865284 additions and 463132 deletions

View File

@@ -0,0 +1,45 @@
using TMPro;
using UnityEngine;
namespace Cielonos.Settings.UI
{
/// <summary>
/// 不带 [Range] 特性的 int 字段的设置条目 — 使用 TMP_InputField整数模式
/// </summary>
public class SettingsEntryIntInput : SettingsEntryBase
{
[SerializeField] private TMP_InputField inputField;
protected override void SetupUI()
{
if (inputField == null) return;
inputField.contentType = TMP_InputField.ContentType.IntegerNumber;
inputField.onEndEdit.AddListener(OnInputEndEdit);
}
public override void RefreshValue()
{
if (inputField != null)
inputField.SetTextWithoutNotify(GetFieldValue().ToString());
}
private void OnInputEndEdit(string text)
{
if (int.TryParse(text, out int value))
{
SetFieldValue(value);
}
else
{
RefreshValue();
}
}
private void OnDestroy()
{
if (inputField != null)
inputField.onEndEdit.RemoveListener(OnInputEndEdit);
}
}
}