Поделиться через


Индикаторы хода выполнения и активности в Xamarin.iOS

Скорее всего, приложению придется выполнять длительные задачи, такие как загрузка или обработка данных, и что эта задержка может привести к задержке при обновлении пользовательского интерфейса. В это время всегда следует использовать индикатор хода выполнения, чтобы убедить пользователя, что система занята работой. Это дает пользователю контроль над тем, что приложение работает над своим запросом, что оно не ожидает их ввода, и может предоставить средства детализации именно того, сколько времени они должны ждать.

iOS предоставляет два основных способа предоставления этого индикатора хода выполнения в приложении: индикаторы активности (включая определенный индикатор сетевой активности) и индикаторы хода выполнения.

Индикатор активности

Индикаторы действий должны отображаться при выполнении приложения длительного процесса, но вы не знаете точное время, которое потребуется задаче.

Apple предлагает следующие предложения по работе с индикаторами активности:

  • По возможности используйте индикатор хода выполнения. Так как индикатор действия не дает пользователю отзыв о том, сколько времени будет выполняться процесс, всегда используйте индикатор хода выполнения, если длина известна (например, сколько байтов для скачивания в файле).
  • Сохраняйте анимацию индикатора. Пользователи связывают неуправляемый индикатор активности с застопорированным приложением, поэтому при отображении индикатора всегда должен быть анимирован.
  • Описание процесса обработки задачи — просто отображение индикатора активности недостаточно, пользователь должен быть проинформирован о процессе, на котором они ожидают. Включите значимую метку (обычно одно, полное предложение), которая четко определяет задачу.

Реализация индикатора действия

Индикатор действия реализуется через UIActivityIndictorView класс, чтобы указать, что UIActivity происходит.

Управление поведением индикатора активности

StartAnimating()StopAnimating() Используйте методы для запуска и остановки анимации индикатора действия.

HidesWhenStopped Задайте свойство, чтобы true индикатор действия исчезал после StopAnimating() вызова. Это значение по true умолчанию. В любой момент можно увидеть, выполняется ли индикатор действия его анимации спиннинга, проверка свойствуIsAnimating.

Управление внешним видом индикатора действия

Перечисление UIActivityIndicatorViewStyle можно передать в качестве параметра при создании экземпляра индикатора действия. Это можно использовать для задания визуального стиля Grayдля , Whiteнапример WhiteLarge:

activitySpinner = new UIActivityIndicatorView(UIActivityIndicatorViewStyle.WhiteLarge);

Вы можете переопределить цвет, UIActivityIndicatorViewStyle предоставленный, задав Color свойство.

Индикатор выполнения

Индикатор хода выполнения представляет собой строку, которая заполняется цветом, чтобы указать состояние и длину задачи, которая занимает много времени. Индикаторы хода выполнения всегда следует использовать, если длина задач известна или может быть вычислена.

Apple предлагает следующие предложения по работе с Индикаторами хода выполнения:

  • Точный отчет о ходе выполнения. Индикаторы хода выполнения всегда должны быть точным представлением времени, необходимого для выполнения задачи. Никогда не искажайте время, чтобы приложение было занято.
  • Используйте для четко определенных длительности. Индикатор хода выполнения должен не только показать, что выполняется длинная задача, но и указать пользователю, сколько из задачи завершено, и оценить оставшееся время.

Реализация индикатора выполнения

Индикатор хода выполнения создается путем создания экземпляра UIProgressView

Индикаторы хода выполнения и раскадровки

При использовании конструктора iOS можно также добавить панель хода выполнения в пользовательский интерфейс. Найдите представление хода выполнения на панели элементов и перетащите его в представление.

На панели свойств можно настроить следующие свойства:

Снимок экрана: панель свойств, в которой можно изменять свойства стиля, хода выполнения, отслеживания и отслеживания изображений.

Управление поведением индикатора хода выполнения

Ход выполнения панели можно изначально задать с помощью Progress свойства:

ProgressBar.Progress = 0f;

Ход выполнения можно настроить с помощью SetProgress метода и передать логическое объявление, если вы хотите изменить анимацию или нет.

ProgressBar.SetProgress(1.0f, true);

Дополнительные сведения об использовании индикатора хода выполнения см. в рецепте отчета о ходе выполнения .

Управление внешним видом индикатора выполнения

Как и индикатор действия, UIProgressViewStyle перечисление можно передать в качестве параметра при создании экземпляра индикатора хода выполнения.

Параметры "Ход выполнения" и "Отслеживать изображение" и "Цвет оттенка" можно настроить с помощью следующих свойств:

progressBar = new UIProgressView(UIProgressViewStyle.Default)
            {
                ProgressImage = UIImage.FromBundle("TrackImage"),
                ProgressTintColor = UIColor.Cyan,
                TrackImage = UIImage.FromBundle("TrackImage"),
                TrackTintColor = UIColor.Magenta
            };