示例#1
0
 internal static UITextField?GetSearchTextField(this UISearchBar searchBar)
 {
     if (OperatingSystem.IsIOSVersionAtLeast(13))
     {
         return(searchBar.SearchTextField);
     }
     else
     {
         return(searchBar.GetSearchTextField());
     }
 }
示例#2
0
        public static void UpdateVerticalTextAlignment(this UISearchBar uiSearchBar, ISearchBar searchBar, UITextField?textField)
        {
            textField ??= uiSearchBar.GetSearchTextField();

            if (textField == null)
            {
                return;
            }

            textField.VerticalAlignment = searchBar.VerticalTextAlignment.ToPlatformVertical();
        }
示例#3
0
        public static void UpdateFont(this UISearchBar uiSearchBar, ITextStyle textStyle, IFontManager fontManager, UITextField?textField)
        {
            textField ??= uiSearchBar.GetSearchTextField();

            if (textField == null)
            {
                return;
            }

            textField.UpdateFont(textStyle, fontManager);
        }
示例#4
0
        public static void UpdateIsTextPredictionEnabled(this UISearchBar uiSearchBar, ISearchBar searchBar, UITextField?textField)
        {
            textField ??= uiSearchBar.GetSearchTextField();

            if (textField == null)
            {
                return;
            }

            if (searchBar.IsTextPredictionEnabled)
            {
                textField.AutocorrectionType = UITextAutocorrectionType.Yes;
            }
            else
            {
                textField.AutocorrectionType = UITextAutocorrectionType.No;
            }
        }
示例#5
0
        public static void UpdatePlaceholder(this UISearchBar uiSearchBar, ISearchBar searchBar, UITextField?textField)
        {
            textField ??= uiSearchBar.GetSearchTextField();

            if (textField == null)
            {
                return;
            }

            var placeholder      = searchBar.Placeholder ?? string.Empty;
            var placeholderColor = searchBar.PlaceholderColor;
            var foregroundColor  = placeholderColor ?? ColorExtensions.PlaceholderColor.ToColor();

            textField.AttributedPlaceholder = foregroundColor == null
                                ? new NSAttributedString(placeholder)
                                : new NSAttributedString(str: placeholder, foregroundColor: foregroundColor.ToPlatform());

            textField.AttributedPlaceholder.WithCharacterSpacing(searchBar.CharacterSpacing);
        }