Checkbox

22 Feb Checkbox

Как реализовать Checkbox?
Отображение и изменение битовой переменной из контроллера.
 

1 answer

Добрый день!
Можно делать по разному –

  1. Для конкретного бита можно использовать слайдер с двумя состояниями – он и покажет текущее значение и позволит переключить его. 
  2. Можно сделать маленькую кнопочку на установку этого бита. С разными цветами для вкл. и откл. состояния.
  3. Можно для всех битов использовать битовую маску и словарь для текстового значения. Тогда текстом будет отображаться осмысленное значение этого бита. И также кликом можно будет переключить режим. 
  4. В редакторе есть элемент – светодиод (LED), его можно привязать к отображению значения конкретного бита в регистре из контроллера. Если нужно чтобы по клику на этот же светодиод переключился данный бит, то для этого можно использовать полностью прозрачную кнопку и положить слоем выше.
    К кнопке нужно привязать скриптик, который сделает нужное действие. Если битов очень много разных, то чтобы не множить скрипты, кнопка может писать некое значение (1 … 32 номер бита) в вспомогательный внутренний регистр. а скрипт в свою очередь смотрит на этот регистр и если он не равен 0, то делает инверсию соотв. бита (+ надо не забыть обнулить вспомогательный регистр, чтобы не было повторного ложного вызова). примеры битовых функций есть в документации.
    если нужно, чтобы вместо светодиода был именно checkbox, тогда надо загрузить 2 иконки (пустой и нажатый вариант checkbox’a) и привязать к состоянию нужного бита в контроллере. 
#1

Пожалуйста войдите или зарегистрируйтесь чтобы добавить ответ