收紧各组件权限
This commit is contained in:
@@ -1,19 +1,27 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace XericUI.ReflectionUIGenerator
|
||||
{
|
||||
/// <summary>
|
||||
/// Label 只读值组件 — 纯文本展示,无交互控件
|
||||
/// 拥有自己的 _valueDisplayText 用于显示值
|
||||
/// </summary>
|
||||
[AddComponentMenu("Xeric Library/UI Action Vessel/Values/XUIAvrgMDLabelValue")]
|
||||
public class XUIAvrgMDLabelValue : XUIAvrgMDValue
|
||||
{
|
||||
[SerializeField, Tooltip("值显示文本 — 显示当前字段的值")]
|
||||
#if dUI_TextMeshPro
|
||||
[SerializeField, Tooltip("关联的 TMP_Text 组件(标签文本 + 值文本共用一个 Text 时使用)")]
|
||||
private TMPro.TMP_Text _tmpText;
|
||||
private TMPro.TMP_Text _valueDisplayText;
|
||||
#else
|
||||
private UnityEngine.UI.Text _valueDisplayText;
|
||||
#endif
|
||||
|
||||
public override void OnPoolRelease()
|
||||
{
|
||||
if (_valueDisplayText != null) _valueDisplayText.text = "";
|
||||
base.OnPoolRelease();
|
||||
}
|
||||
|
||||
public override void BindToAccessor(
|
||||
IAvrgValueAccessor accessor,
|
||||
AvrgMvvmBinding binding,
|
||||
@@ -33,5 +41,35 @@ namespace XericUI.ReflectionUIGenerator
|
||||
var initialValue = accessor.GetValue();
|
||||
UpdateValueDisplay(initialValue, ValidationState.Normal);
|
||||
}
|
||||
|
||||
protected override void UpdateValueDisplay(object value, ValidationState state)
|
||||
{
|
||||
if (_valueDisplayText != null)
|
||||
{
|
||||
_valueDisplayText.text = CurrentAccessor?.FormatDisplay(value) ?? value?.ToString() ?? "";
|
||||
|
||||
_valueDisplayText.color = state == ValidationState.Invalid
|
||||
? Color.red
|
||||
: state == ValidationState.Warning
|
||||
? new Color(1f, 0.92f, 0.016f)
|
||||
: Color.white;
|
||||
}
|
||||
|
||||
base.UpdateValueDisplay(value, state);
|
||||
}
|
||||
|
||||
protected override void OnValidationStateChanged(ValidationState state)
|
||||
{
|
||||
base.OnValidationStateChanged(state);
|
||||
|
||||
if (_valueDisplayText != null)
|
||||
{
|
||||
_valueDisplayText.color = state == ValidationState.Invalid
|
||||
? Color.red
|
||||
: state == ValidationState.Warning
|
||||
? new Color(1f, 0.92f, 0.016f)
|
||||
: Color.white;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user