Как я могу изменить цвета значка и подчеркивания SearchBar с помощью AppThemColor? - PullRequest
0 голосов
/ 17 июня 2020

В настоящее время я использую эти AppThemeColors.

<AppThemeColor x:Key="PrimaryColor"
               Light="Teal"
               Dark="Indigo"/>

<AppThemeColor x:Key="SecondaryColor"
               Light="White"
               Dark="Black"/>

Как я могу изменить цвет значка SearchBar и подчеркивания с помощью этих AppThemeColors?

1 Ответ

1 голос
/ 17 июня 2020

В строке поиска для iOS есть проблема с iOS 13 и далее. В соответствии с проблемой , зарегистрированной в Xamarin GitHub , вы можете использовать PlatformEffect , чтобы реализовать это:

public class SearchBarBackgroundEffect : PlatformEffect
{
    public SearchBarBackgroundEffect()
    {
    }

    private UIKit.UISearchBar NativeSearchBar => (UIKit.UISearchBar)Control;
    private SearchBar XamarinSearchBar => (SearchBar)Element;

    protected override void OnAttached()
    {
        if (UIKit.UIDevice.CurrentDevice.CheckSystemVersion(13, 0))
            NativeSearchBar.SearchTextField.BackgroundColor = XamarinSearchBar.BackgroundColor.ToUIColor();
    }
    protected override void OnDetached()
    {

    }
}
...