Compartir a través de


Selección de elementos de selector en iOS

Esta .NET Multi-platform App UI (.NET MAUI) específica de la plataforma de iOS controla cuándo se produce la selección de elementos en un Picker, lo que permite al usuario especificar que la selección de elementos se produzca al examinar los elementos del control, o solo una vez que se presiona el botón Listo. Se consume en XAML estableciendo la propiedad adjunta Picker.UpdateMode en un valor de la enumeración UpdateMode:

<ContentPage ...
             xmlns:ios="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific;assembly=Microsoft.Maui.Controls">
    <StackLayout Margin="20">
        <Picker ... Title="Select a monkey" ios:Picker.UpdateMode="WhenFinished">
          ...
        </Picker>
        ...
    </StackLayout>
</ContentPage>

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

using Microsoft.Maui.Controls.PlatformConfiguration;
using Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific;
...

picker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);

El método Picker.On<iOS> especifica que esta plataforma específica solo se ejecutará en iOS. El método Picker.SetUpdateMode, en el espacio de nombres Microsoft.Maui.Controls.PlatformConfiguration.iOSSpecific, se usa para controlar cuándo se produce la selección de elementos, con la enumeración UpdateMode que proporciona dos valores posibles:

  • Immediately: la selección de elementos se produce cuando el usuario examina los elementos en Picker. Este es el comportamiento predeterminado en .NET MAUI
  • WhenFinished: la selección de elementos solo se produce una vez que el usuario ha presionado el botón Listo en Picker.

Además, el método SetUpdateMode se puede usar para alternar los valores de enumeración llamando al método UpdateMode, que devuelve el UpdateMode actual:

switch (picker.On<iOS>().UpdateMode())
{
    case UpdateMode.Immediately:
        picker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
        break;
    case UpdateMode.WhenFinished:
        picker.On<iOS>().SetUpdateMode(UpdateMode.Immediately);
        break;
}

El resultado es que se aplica un UpdateMode especificado a Picker, que controla cuándo se produce la selección de elementos:

Picker UpdateMode Platform-Specific.