Добавить в корзинуПозвонить
Найти в Дзене
Unity, игры, уроки

Unity UI data binding

Как отделить логику от интерфейса в Unity, чтобы не получилась каша? Есть давно устоявшиеся паттерны и «best practices». Хотя для Unity последних не так уж и много, как например для node.js. Можно использовать эвенты, делегаты, обсерверы, вот это все, если говорить об использовании C# в Unity. Есть и готовые ассеты в Asset Store. В общем, это то, что я начал писать сам, но вовремя нашел почти готовое решение, которое меня устраивает. После небольшого допиливания будет вообще супер — библиотека для простого биндинга в Unity. Работает все очень просто: Можно связывать любые параметры, использовать готовые биндинги которые идут в пакете, можно написать свой. И все достаточно просто и не ресурсоемко. Ссылка на Github
У Leopotam «прокачанная» версия биндинга https://github.com/Leopotam/LeopotamGroupLibraryUnity/tree/master/SystemUi/DataBinding __________________________________________________________________________________________ Все последние обновления этой и других статей, вы можете

Как отделить логику от интерфейса в Unity, чтобы не получилась каша?

Есть давно устоявшиеся паттерны и «best practices». Хотя для Unity последних не так уж и много, как например для node.js. Можно использовать эвенты, делегаты, обсерверы, вот это все, если говорить об использовании C# в Unity. Есть и готовые ассеты в Asset Store.

В общем, это то, что я начал писать сам, но вовремя нашел почти готовое решение, которое меня устраивает. После небольшого допиливания будет вообще супер — библиотека для простого биндинга в Unity.

Работает все очень просто:

  • Импортируете DataBind.unitypackage в Unity
  • Добавляете скрипт DataBindContext к родительскому объекту
  • Добавляете скрипт Bind[нужный тип] к основным объектам
  • Вызываете dataBindContext[key] = value для биндинга
  • Все. Присвоили значение переменной — оно поменялось в UI Text, например.

Можно связывать любые параметры, использовать готовые биндинги которые идут в пакете, можно написать свой. И все достаточно просто и не ресурсоемко.

Ссылка на Github

У Leopotam «прокачанная» версия биндинга 
https://github.com/Leopotam/LeopotamGroupLibraryUnity/tree/master/SystemUi/DataBinding

__________________________________________________________________________________________

Все последние обновления этой и других статей, вы можете найти у меня в блоге https://mopsicus.ru

Подписывайтесь, чтобы не пропустить что-то интересное