public override void Render(ref GameObject targetObject, RenderContext renderContext, GameObject parentObject) { GetOrCreateSelfObject(renderContext, ref targetObject, parentObject); var children = RenderChildren(renderContext, targetObject); var inputField = ElementUtil.GetOrAddComponent <InputField>(targetObject); inputField.transition = Selectable.Transition.None; if (InputJson != null) { var textComponent = ElementUtil.FindComponentByClassName <Text>(children, InputJson.Get("text_component_class")); if (textComponent != null) { inputField.textComponent = textComponent; if (!textComponent.gameObject.activeSelf) { textComponent.gameObject.SetActive(true); } } var placeholderText = ElementUtil.FindComponentByClassName <Graphic>(children, InputJson.Get("placeholder_class")); if (placeholderText != null) { inputField.placeholder = placeholderText; } var targetGraphic = ElementUtil.FindComponentByClassName <Text>(children, InputJson.Get("target_graphic_class")); if (targetGraphic != null) { inputField.targetGraphic = targetGraphic; } } ElementUtil.SetLayer(targetObject, Layer); ElementUtil.SetupRectTransform(targetObject, RectTransformJson); }
public override void Render(ref GameObject targetObject, RenderContext renderContext, GameObject parentObject) { GetOrCreateSelfObject(renderContext, ref targetObject, parentObject); var slider = ElementUtil.GetOrAddComponent <Slider>(targetObject); var children = RenderChildren(renderContext, targetObject); var direction = _sliderJson.Get("direction"); if (direction != null) { direction = direction.ToLower(); switch (direction) { case "left-to-right": case "ltr": case "x": slider.direction = Slider.Direction.LeftToRight; break; case "right-to-left": case "rtl": slider.direction = Slider.Direction.RightToLeft; break; case "bottom-to-top": case "btt": case "y": slider.direction = Slider.Direction.BottomToTop; break; case "top-to-bottom": case "ttb": slider.direction = Slider.Direction.TopToBottom; break; } } slider.transition = Selectable.Transition.None; //slider.interactable = false; var fillRect = ElementUtil.FindComponentByClassName <RectTransform>(children, _sliderJson.Get("fill_rect_name")); if (fillRect != null) { slider.value = slider.maxValue; slider.fillRect = fillRect; } var handleRect = ElementUtil.FindComponentByClassName <RectTransform>(children, _sliderJson.Get("handle_rect_name")); if (handleRect != null) { slider.handleRect = handleRect; slider.interactable = true; } ElementUtil.SetupRectTransform(targetObject, RectTransformJson); }