Seleção de item do DatePicker no iOS
Isso é específico da plataforma iOS controla quando a seleção de itens ocorre em um DatePicker
, permitindo que o usuário especifique que a seleção de itens ocorre ao procurar itens no controle ou somente quando o botão Concluído é pressionado. Ele é consumido em XAML definindo a propriedade anexada DatePicker.UpdateMode
como um valor da UpdateMode
enumeração:
<ContentPage ...
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
<StackLayout>
<DatePicker MinimumDate="01/01/2020"
MaximumDate="12/31/2020"
ios:DatePicker.UpdateMode="WhenFinished" />
...
</StackLayout>
</ContentPage>
Como alternativa, ele pode ser consumido do C# usando a API fluente:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...
datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
O método DatePicker.On<iOS>
especifica que essa plataforma específica só será executada no iOS. O DatePicker.SetUpdateMode
método, no Xamarin.Forms.PlatformConfiguration.iOSSpecific
namespace, é usado para controlar quando ocorre a seleção de itens, com a UpdateMode
enumeração fornecendo dois valores possíveis:
Immediately
– a seleção de itens ocorre quando o usuário navega pelos itens noDatePicker
. Esse é o comportamento padrão no Xamarin.Forms.WhenFinished
– a seleção de itens só ocorre depois que o usuário pressiona o botão Concluído noDatePicker
.
Além disso, o SetUpdateMode
método pode ser usado para alternar os valores de enumeração chamando o UpdateMode
método, que retorna o atual UpdateMode
:
switch (datePicker.On<iOS>().UpdateMode())
{
case UpdateMode.Immediately:
datePicker.On<iOS>().SetUpdateMode(UpdateMode.WhenFinished);
break;
case UpdateMode.WhenFinished:
datePicker.On<iOS>().SetUpdateMode(UpdateMode.Immediately);
break;
}
O resultado é que um especificado UpdateMode
é aplicado ao , que controla quando ocorre a DatePicker
seleção de itens: