예제 #1
0
        internal void ApplyTheme(IMaterialEntryRenderer element)
        {
            if (element == null)
            {
                return;
            }

            if (_activeTextinputController == null)
            {
                return;
            }

            FilledTextFieldColorThemer.ApplySemanticColorScheme(_colorScheme, (MTextInputControllerFilled)_activeTextinputController);

            var textColor         = MaterialColors.GetEntryTextColor(element.TextColor);
            var placeHolderColors = MaterialColors.GetPlaceHolderColor(element.PlaceholderColor, element.TextColor);
            var underlineColors   = MaterialColors.GetUnderlineColor(element.TextColor);

            TextColor = textColor;
            _activeTextinputController.InlinePlaceholderColor         = placeHolderColors.InlineColor;
            _activeTextinputController.FloatingPlaceholderNormalColor = placeHolderColors.InlineColor;
            _activeTextinputController.FloatingPlaceholderActiveColor = placeHolderColors.FloatingColor;

            // BackgroundColor
            _activeTextinputController.BorderFillColor = MaterialColors.CreateEntryFilledInputBackgroundColor(element.BackgroundColor, element.TextColor);

            _activeTextinputController.ActiveColor = underlineColors.FocusedColor;
            _activeTextinputController.NormalColor = underlineColors.UnFocusedColor;
        }
예제 #2
0
        internal void UpdateTextColor(IMaterialEntryRenderer element)
        {
            var uIColor = MaterialColors.GetEntryTextColor(element.TextColor);

            _colorScheme.OnSurfaceColor = uIColor;
            _colorScheme.PrimaryColor   = uIColor;
        }
        protected internal override void UpdateColor()
        {
            var uIColor = MaterialColors.GetEntryTextColor(Element.TextColor);

            _colorScheme.OnSurfaceColor = uIColor;
            _colorScheme.PrimaryColor   = uIColor;

            ApplyTheme();
        }
        protected virtual void OverrideThemeColors()
        {
            var textColor         = MaterialColors.GetEntryTextColor(Element.TextColor);
            var placeHolderColors = MaterialColors.GetPlaceHolderColor(Element.PlaceholderColor, Element.TextColor);
            var underlineColors   = MaterialColors.GetUnderlineColor(Element.TextColor);

            Control.TextColor = textColor;
            _activeTextinputController.InlinePlaceholderColor         = placeHolderColors.InlineColor;
            _activeTextinputController.FloatingPlaceholderNormalColor = placeHolderColors.InlineColor;
            _activeTextinputController.FloatingPlaceholderActiveColor = placeHolderColors.FloatingColor;

            // BackgroundColor
            _activeTextinputController.BorderFillColor = MaterialColors.CreateEntryFilledInputBackgroundColor(Element.BackgroundColor, Element.TextColor);

            _activeTextinputController.ActiveColor = underlineColors.FocusedColor;
            _activeTextinputController.NormalColor = underlineColors.UnFocusedColor;
        }