Выбор элемента TimePicker в iOS

Download Sample Скачайте пример

Этот элемент управления для платформы iOS определяется при выборе элементов в элементе TimePickerуправления, что позволяет пользователю указывать, что выбор элемента происходит при просмотре элементов в элементе управления или только после нажатия кнопки "Готово ". Он используется в XAML, задав TimePicker.UpdateMode присоединенное свойство значение перечисления UpdateMode :

<ContentPage ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout>
       <TimePicker Time="14:00:00"
                   ios:TimePicker.UpdateMode="WhenFinished" />
       ...
    </StackLayout>
</ContentPage>

Кроме того, его можно использовать из C# с помощью api fluent:

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

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

Метод TimePicker.On<iOS> указывает, что эта платформа будет работать только в iOS. Метод TimePicker.SetUpdateMode в Xamarin.Forms.PlatformConfiguration.iOSSpecific пространстве имен используется для управления при выборе элемента, при UpdateMode этом перечисление предоставляет два возможных значения:

  • Immediately — выбор элемента происходит, так как пользователь просматривает элементы в элементе TimePicker. Это поведение по умолчанию в Xamarin.Forms.
  • WhenFinished — выбор элемента происходит только после нажатия кнопки "Готово " в элементе TimePicker.

Кроме того, SetUpdateMode метод можно использовать для переключения значений перечисления путем вызова UpdateMode метода, который возвращает текущий UpdateMode:

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

Результатом является применение указанного UpdateMode элемента к TimePickerэлементу управления при выборе элемента:

Screenshot of TimePicker update modes