Sdílet prostřednictvím


Práce s řadiči karet tvOS v Xamarinu

U mnoha typů aplikací tvOS se primární navigace zobrazí jako panel karet spuštěný v horní části obrazovky. Uživatel potáhne prstem doleva a doprava v seznamu možných kategorií a oblasti obsahu pod změnami, aby odrážel výběr uživatele.

Ukázkový panel karet

Panel karet je ve výchozím nastavení průsvitný a vždy se zobrazí v horní části obrazovky. Když je fokus, panel karet bude pokrýt prvních 140 pixelů obrazovky, ale rychle se posune pryč, když se fokus přesune do oblasti obsahu níže.

Panely karet v tvOS

Funguje UITabViewController podobným způsobem a slouží podobnému účelu v tvOS, jak to dělá v iOSu, s následujícími klíčovými rozdíly:

  • Na rozdíl od panelu karet v iOSu, který se zobrazuje v dolní části obrazovky, zabírají pruhy karet v tvOS prvních 140 pixelů obrazovky a jsou ve výchozím nastavení průsvitné.
  • Když fokus opustí panel karet pro oblast obsahu dole, panel karet se rychle posune z horní části obrazovky a bude skrytý. Uživatel může buď jednou klepnout na tlačítko Nabídky, nebo potáhnout prstem nahoru na Siri Remote a znovu zobrazit panel karet.
  • Potáhnutím prstem na Siri Remote přesunete fokus na oblast obsahu pod panelem karet na první fokuselnou položku v zobrazeném obsahu. Opět se po posunu fokusu skryje panel karet.
  • Kliknutím vyberte kategorii zobrazenou na panelu karet se přepne na obsah dané kategorie a fokus se přepne na první prioritní položku v daném zobrazení.
  • Počet kategorií zobrazených na panelu karet by měl být opravený a všechny kategorie by měly být vždy přístupné, daná kategorie by nikdy neměla být zakázaná.
  • Panely karet nepodporují přizpůsobení v tvOS. Kromě toho nezobrazují kategorii Další (například iOS), pokud je na panelu karet více kategorií, než se vejde.

Apple nabízí následující návrhy pro práci s panely karet:

  • Pomocí panelů karet můžete logicky uspořádat obsah – pomocí panelu karet můžete logicky uspořádat obsah, se kterým vaše aplikace tvOS pracuje. Například Doporučené, Hlavní grafy, Zakoupené a Hledání.
  • Přidat odznáčky informující uživatele o novém obsahu – Volitelně můžete zobrazit odznáček (červený ovál s bílým číslem nebo vykřičníkem) a informovat uživatele o novém obsahu v kategorii.
  • Používejte odznáky střídmě – Nezahlcujte panel karet s odznáčky a zobrazte je jenom tam, kde poskytují uživateli důležité informace.
  • Omezte počet kategorií – pokud chcete snížit složitost a udržet aplikaci spravovatelnou, nepřetěžujte panel karet kategoriemi a ujistěte se, že jsou všechny kategorie viditelné a nejsou přeplněné. Jednoduché, krátké názvy fungují nejlépe.
  • Nezakažujte kategorii – Všechny karty (kategorie) by měly být vždy viditelné a povolené vždy. Pokud daná karta nemá žádný obsah, poskytněte uživateli vysvětlení, proč. Karta Nákupy bude například prázdná, pokud uživatel neprodá žádné nákupy.

Položky na panelu karet

Každá kategorie (tab) na panelu karet je reprezentována položkou panelu karet (UITabBarItem). Apple nabízí následující návrhy pro práci s položkami panelu karet:

  • Používejte tabulátory založené na textu – i když je položka na panelu karet schopná reprezentovat jako ikonu, Apple navrhne použití textu jenom proto, že stručný název je srozumitelnější než ikona.
  • Použití krátkých, smysluplných podstatných jmen nebo sloves – Položka panelu karet by měla jasně předat obsah, který obsahuje, a funguje nejlépe, když se jedná o jednoduché podstatné jméno (například Fotky, Filmy nebo Hudba) nebo slovesa (například Hledání nebo Přehrávání).

Panely karet a scénáře

Nejjednodušší způsob, jak pracovat s panely karet v aplikaci Xamarin.tvOS, je přidat je do uživatelského rozhraní aplikace pomocí iOS Designeru.

  1. Spusťte novou aplikaci Xamarin.tvOS a vyberte aplikaci tvOS>s kartami:>

    Výběr aplikace s kartami

  2. Postupujte podle všech výzev a vytvořte nové řešení Xamarin.tvOS.

  3. V oblasti řešení poklikejte na Main.storyboard soubor a otevřete ho pro úpravy.

  4. Pokud chcete změnit ikonu nebo název dané kategorie, vyberte položku panelu karet pro kontroler zobrazení v osnově dokumentu:

    Položka panelu karet kontroleru zobrazení v osnově dokumentu

  5. Potom nastavte požadované vlastnosti na kartě Widget v Průzkumníku vlastností:

    Karta Widget

  6. Pokud chcete přidat novou kategorii (tab), umístěte kontroler zobrazení na návrhovou plochu:

    Kontroler zobrazení

  7. Stisknutou klávesou Control a přetažením z kontroleru zobrazení karet na nový kontroler zobrazení

  8. V místní nabídce vyberte kontrolery zobrazení a přidejte nové zobrazení jako kartu (Kategorie):

    Vybrat kartu

  9. Navrhňte rozložení uživatelského rozhraní pro každou oblast obsahu Caterogies jako obvykle přidáním prvků uživatelského rozhraní v iOS Designeru.

  10. Zpřístupněte všechny požadované události pro práci s ovládacími prvky uživatelského rozhraní v kódu jazyka C#.

  11. Pojmenujte všechny ovládací prvky uživatelského rozhraní, které chcete zveřejnit v kódu jazyka C#.

  12. Uložte provedené změny.

Důležité

I když je možné přiřadit události, jako TouchUpInside je prvek uživatelského rozhraní (například UIButton) v iOS Designeru, nebude se nikdy volat, protože Apple TV nemá dotykovou obrazovku nebo nepodporuje dotykové události. Událost byste měli vždy použít Primary Action při vytváření obslužných rutin událostí pro prvky uživatelského rozhraní tvOS.

Další informace o práci se storyboardy najdete v naší úvodní příručce Hello, tvOS.

Práce s panely karet

Items Použijte vlastnost pro UITabBar přístup k kolekciUITabBarItems, která obsahuje jako nula (0) indexovaného pole. Vlastnost SelectedItem vrátí aktuálně vybranou kartu (Kategorie) jako hodnotu UITabBarItem.

Práce s položkami na panelu karet

Pokud chcete na dané kartě zobrazit odznáček (červený ovál s bílým textem), použijte následující kód:

// Display a badge
TabBar.Items [2].BadgeValue = "10";

To by při spuštění vytvořilo následující výsledky:

Položka panelu karet s odznáček

Title Pomocí vlastnosti UITabBarItem ikony změňte název a Image vlastnost.

Shrnutí

Tento článek popisuje návrh a práci s kontrolerem tabulátoru v aplikaci Xamarin.tvOS.