Compartir vía


Estilo SearchBar en iOS

Este control específico de la plataforma iOS controla si un objeto SearchBar tiene un fondo. Se consume en XAML estableciendo la propiedad enlazable SearchBar.SearchBarStyle en un valor de la enumeración UISearchBarStyle:

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout>
        <SearchBar ios:SearchBar.SearchBarStyle="Minimal"
                   Placeholder="Enter search term" />
        ...
    </StackLayout>
</ContentPage>

Como alternativa, se puede consumir desde C# mediante la API fluida:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...

SearchBar searchBar = new SearchBar { Placeholder = "Enter search term" };
searchBar.On<iOS>().SetSearchBarStyle(UISearchBarStyle.Minimal);

El método SearchBar.On<iOS> especifica que esta plataforma específica solo se ejecutará en iOS. El método SearchBar.SetSearchBarStyle, en el espacio de nombres Xamarin.Forms.PlatformConfiguration.iOSSpecific, se usa para controlar si SearchBar tiene un fondo. La enumeración UISearchBarStyle proporciona tres valores posibles:

  • Default indica que SearchBar tiene el estilo predeterminado. Se trata del valor predeterminado de la propiedad enlazable SearchBar.SearchBarStyle.
  • Prominent indica que SearchBar tiene un fondo translúcido y que el campo de búsqueda es opaco.
  • Minimal indica que SearchBar no tiene ningún fondo y que el campo de búsqueda es translúcido.

Además, el método SearchBar.GetSearchBarStyle se puede usar para devolver el objeto UISearchBarStyle que se aplica a SearchBar.

El resultado es que un miembro especificado UISearchBarStyle se aplica a SearchBar, que controla si tiene SearchBar un fondo:

Captura de pantalla de estilos SearchBar en iOS

En las capturas de pantalla siguientes se muestran los miembros UISearchBarStyle aplicados a los objetos SearchBar que tienen la propiedad BackgroundColor establecida en:

Captura de pantalla de estilos SearchBar con color de fondo, en iOS