Перейти к основному содержимому

Text Binders

Биндеры для управления текстовыми компонентами TextMeshPro.


TextBinder

Основной биндер для TMP_Text.text. Принимает string, а также числовые типы через INumberBinder.

СвойствоОписание
TargetTMP_Text компонент
ConverterIConverter<string?, string?> (опционально)
CultureInfoModeРежим форматирования чисел (Invariant, Current, Custom)

Типы данных: string, int, float, long, double (числа конвертируются через ToCultureString).

Режимы: OneWay, OneTime, OneWayToSource.

[ViewModel]
public partial class ScoreViewModel
{
[OneWayBind] private int _score; // TextBinder покажет "1500"
[OneWayBind] private string _label; // TextBinder покажет текст напрямую
}

TextSwitcherBinder

bool → выбор между двумя строками.

СвойствоОписание
True ValueТекст при true
False ValueТекст при false

Режимы: OneWay, OneTime.


TextFontBinder / TextFontSwitcherBinder

Привязка шрифта TMP_FontAsset:

БиндерТип данныхОписание
TextFontBinderTMP_FontAssetУстанавливает шрифт
TextFontSwitcherBinderboolTMP_FontAssetВыбор шрифта по условию

TextFontSizeBinder / TextFontSizeSwitcherBinder

Привязка размера шрифта:

БиндерТип данныхОписание
TextFontSizeBinderfloatУстанавливает fontSize
TextFontSizeSwitcherBinderboolfloatВыбор размера по условию

TextAlignmentBinder / TextAlignmentSwitcherBinder

Привязка выравнивания текста:

БиндерТип данныхОписание
TextAlignmentBinderTextAlignmentOptionsУстанавливает выравнивание
TextAlignmentSwitcherBinderboolTextAlignmentOptionsВыбор по условию

Прочие свойства TMP_Text

БиндерТип данныхСвойство
TextFontStyleBinderFontStylesfontStyle
TextAutoSizeBinderboolenableAutoSizing
TextRichTextBinderboolrichText
TextCharacterSpacingBinderfloatcharacterSpacing
TextLineSpacingBinderfloatlineSpacing
TextMarginBinderVector4margin (left, top, right, bottom)
TextMaxVisibleCharactersBinderintmaxVisibleCharacters; 0 скрывает текст, не очищая его

Числовые биндеры (FontSize, CharacterSpacing, LineSpacing, Margin) пишут только конечные значения: NaN логируется и пропускается.


Пример: отображение статистики

[ViewModel]
public partial class StatsViewModel
{
[OneWayBind] private int _health; // TextBinder → "100"
[OneWayBind] private bool _isAlive; // TextSwitcherBinder → "Жив" / "Мёртв"
}

См. также