Sdílet prostřednictvím


Indikátory průběhu a aktivity v Xamarin.iOS

Je pravděpodobné, že vaše aplikace bude muset provádět dlouhotrvající úlohy, jako je načítání nebo zpracování dat, a že toto zpoždění může způsobit zpoždění při aktualizaci uživatelského rozhraní. Během této doby byste měli vždy použít indikátor průběhu k opětovnému ověření uživatele, že systém pracuje. To uživateli dává kontrolu nad tím, že aplikace pracuje na žádosti, že nečeká na vstup a může poskytnout způsob, jak přesně přesně dlouho čekat.

iOS nabízí dva hlavní způsoby, jak poskytnout tuto indikaci průběhu v aplikaci: indikátory aktivity (včetně konkrétního indikátoru aktivity sítě ) a indikátory průběhu.

Ukazatel aktivity

Indikátory aktivit by se měly zobrazit, když vaše aplikace běží dlouho, ale nevíte, jak dlouho bude úkol vyžadovat.

Apple nabízí následující návrhy pro práci s indikátory aktivity:

  • Kdykoli je to možné, použijte místo toho indikátor průběhu – protože indikátor aktivity uživateli neposkytuje žádnou zpětnou vazbu o tom, jak dlouho bude trvat spuštění procesu, vždy použijte indikátor průběhu, pokud je délka známa (například kolik bajtů se má stáhnout v souboru).
  • Nechejte indikátor animovaný – Uživatelé souvisejí se statickým indikátorem aktivity s pozastavenou aplikací, takže byste měli mít vždy animovaný indikátor, když se zobrazuje.
  • Popište zpracovávanou úlohu – Stačí jenom zobrazit indikátor aktivity sám o sobě, uživatel musí být informován o procesu, na který čeká. Zahrňte smysluplný popisek (obvykle jednu, úplnou větu), který jasně definuje úkol.

Implementace ukazatele aktivity

Indikátor aktivity se implementuje prostřednictvím UIActivityIndictorView třídy, která indikuje, že UIActivity probíhá.

Správa chování ukazatele aktivity

StartAnimating() Pomocí metod StopAnimating() můžete spustit a zastavit animaci indikátoru aktivity.

HidesWhenStopped Nastavte vlastnost tak, aby true indikátor aktivity zmizel po StopAnimating() zavolání. Tato možnost je ve výchozím nastavení nastavená na true hodnotu. V libovolném okamžiku můžete zjistit, jestli indikátor aktivity spouští jeho rotující animaci kontrolou IsAnimating vlastnosti.

Správa vzhledu indikátorů aktivity

Výčet UIActivityIndicatorViewStyle lze předat jako parametr při vytváření instance ukazatele aktivity. Můžete ho použít k nastavení vizuálního stylu na Gray, Whitenebo WhiteLarge, například:

activitySpinner = new UIActivityIndicatorView(UIActivityIndicatorViewStyle.WhiteLarge);

Barvu, kterou UIActivityIndicatorViewStyle poskytujete, můžete přepsat nastavením Color vlastnosti.

Ukazatel průběhu

Indikátor průběhu představuje čáru, která vyplní barvu, která označuje stav a délku časově náročného úkolu. Indikátory průběhu by se měly vždy používat, pokud je délka úkolů známa nebo je možné je vypočítat.

Apple nabízí následující návrhy pro práci s indikátory průběhu:

  • Přesné hlášení průběhu – indikátory průběhu by vždy měly být přesným znázorněným časem potřebným k dokončení úkolu. Nikdy nepředstavujte čas, aby se aplikace zobrazovala zaneprázdněna.
  • Používá se pro dobře definované doby trvání – Indikátor průběhu by neměl zobrazovat pouze zdlouhavý úkol, ale dát uživateli a indikaci, kolik úkolu je dokončeno, a odhad zbývající doby.

Implementace indikátoru průběhu

Ukazatel průběhu se vytvoří vytvořením instance UIProgressView

Indikátory průběhu a scénáře

Indikátor průběhu můžete také přidat do uživatelského rozhraní při použití iOS Designeru. Na panelu nástrojů vyhledejte zobrazení průběhu a přetáhněte ho do zobrazení.

Na panelu vlastností lze upravit následující vlastnosti:

Snímek obrazovky ukazuje panel vlastností, kde můžete upravit styl, průběh, barevný nádech průběhu, sledovat barevný nádech, obrázek průběhu a sledovat vlastnosti obrázku.

Správa chování indikátoru průběhu

Průběh pruhu lze zpočátku nastavit pomocí Progress vlastnosti:

ProgressBar.Progress = 0f;

Průběh lze upravit pomocí SetProgress metody a předáním logického deklarování, pokud chcete změnu animovat, nebo ne.

ProgressBar.SetProgress(1.0f, true);

Další informace o používání indikátoru průběhu najdete v receptu na průběh generování sestav.

Správa vzhledu indikátoru průběhu

Podobně jako u indikátoru UIProgressViewStyle aktivity lze výčet předat jako parametr při vytváření instance indikátoru průběhu.

Průběh a sledování barev a barevný nádech lze upravit pomocí následujících vlastností:

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