Udostępnij za pośrednictwem


Wybór elementu datePicker w systemie iOS

Ta kontrolka specyficzna dla platformy dla systemu iOS, gdy wybór elementu występuje w elemencie DatePicker, co umożliwia użytkownikowi określenie wyboru tego elementu podczas przeglądania elementów w kontrolce lub tylko po naciśnięciu przycisku Gotowe . Jest on używany w języku XAML przez ustawienie dołączonej DatePicker.UpdateMode właściwości na wartość UpdateMode wyliczenia:

<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>

Alternatywnie można go używać z poziomu języka C# przy użyciu płynnego interfejsu API:

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

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

Metoda DatePicker.On<iOS> określa, że ta platforma będzie działać tylko w systemie iOS. Metoda DatePicker.SetUpdateMode , w Xamarin.Forms.PlatformConfiguration.iOSSpecific przestrzeni nazw, służy do kontrolowania, kiedy nastąpi wybór elementu, a UpdateMode wyliczenie zapewnia dwie możliwe wartości:

  • Immediately — wybór elementu występuje, gdy użytkownik przegląda elementy w elemencie DatePicker. Jest to domyślne zachowanie w programie Xamarin.Forms.
  • WhenFinished — wybór elementu występuje tylko wtedy, gdy użytkownik naciśnie przycisk Done (Gotowe ) w elemencie DatePicker.

Ponadto SetUpdateMode metoda może służyć do przełączania wartości wyliczenia przez wywołanie UpdateMode metody , która zwraca bieżący UpdateModeelement :

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;
}

Wynikiem jest zastosowanie określonego UpdateModeDatePickerelementu do elementu , który kontroluje, gdy następuje wybór elementu:

Zrzut ekranu przedstawiający tryby aktualizacji platformy DatePicker