Části a funkce tabulek v Xamarin.iOS

UiTableView může mít seskupený styl nebo prostý styl a skládá se z následujících částí:

Tyto snímky obrazovky ukazují, jak se zobrazují řádky oddílů, záhlaví, zápatí, ovládací prvky pro úpravy a index.

These screenshots show how section rows, headers, footers, edit controls and the index are displayed

Tyto části jsou popsány podrobněji níže:

Záhlaví oddílu

Buňky lze volitelně seskupit do oddílů, které jsou označené vlastním záhlavím nebo označeny zápatím. Záhlaví lze nastavit s řetězcovou hodnotou nebo vlastním zobrazením, aby bylo možné použít jiné rozložení nebo styl.

Buňky

Buňky jsou hlavním prvkem uživatelského rozhraní tabulky. Při správné implementaci se buňky znovu používají pro efektivitu paměti. Existují čtyři předdefinované styly buněk a při použití scénářů můžete vytvářet vlastní buňky – buď v kódu, nebo v Návrháři.

Volitelné zápatí oddílu lze nastavit s řetězcovou hodnotou nebo můžete zadat vlastní zobrazení, které umožňuje jiné rozložení nebo styl. Záhlaví oddílů a zápatí je možné nastavit nezávisle.

Index

Index se zobrazí jako pruh znaků dolů na pravém okraji tabulky. Dotykové ovládání nebo přetažení indexu zrychluje posouvání na danou část tabulky. Index je volitelný, ale doporučujeme vám pomoct s procházením dlouhých seznamů. Index se obvykle nepoužívá se seskupeným stylem.

Režim úprav

K dispozici je několik různých funkcí pro úpravy:

  • Potažením prstem odstraňte jednotlivé buňky.
  • Zobrazení tlačítek odstranění na každém řádku zadáním režimu úprav
  • Zadáním režimu úprav zobrazíte úchyty pro opětovné řazení.
  • Vkládání nových buněk (s animací)

Zbývající část tohoto dokumentu ukazuje, jak implementovat všechny tyto funkce UITableView s Xamarin.iOS.

Přehled tříd

Tady jsou uvedeny primární třídy použité k zobrazení tabulek:

The primary classes used to display table views are shown here

Účel každé třídy je popsán níže:

  • UITableView – zobrazení, které obsahuje kolekci buněk uvnitř posuvného kontejneru. Zobrazení tabulky obvykle používá celou obrazovku v aplikaci iPhone, ale může existovat jako součást většího zobrazení na iPad (nebo se zobrazí v překryvném okně).
  • UITableViewCell – zobrazení, které představuje jednu buňku (nebo řádek) v zobrazení tabulky. Existují čtyři předdefinované typy buněk a je možné vytvořit vlastní buňky v jazyce C# i v iOS Designeru.
  • UITableViewSource – Xamarin.iOS exkluzivní abstraktní třída, která poskytuje všechny metody potřebné k zobrazení tabulky, včetně počtu řádků, vrácení zobrazení buňky pro každý řádek, zpracování výběru řádků a mnoho dalších volitelných funkcí. Abyste získali funkční uiTableView, musíte tuto podtřídu podtřídu použít.
  • NSIndexPath – Obsahuje vlastnosti řádků a oddílů, které jednoznačně identifikují pozici buňky v tabulce.
  • UITableViewController – A ready-to-use UIViewController, který má UITableView pevně zakódovaný jako jeho zobrazení a přístupný prostřednictvím TableView vlastnost.
  • UIViewController – Pokud tabulka nezabývá celou obrazovku, můžete přidat UITableView do libovolného UIViewController s jeho frame nastaveným odpovídajícím způsobem.

UITableViewSource nahrazuje následující dvě třídy, které jsou stále k dispozici v Xamarin.iOS, ale nejsou obvykle povinné:

  • UITableViewDataSource – Objective-C protokol, který je modelován v Xamarin.iOS jako abstraktní třída. Musí být podtříděna, aby se tabulka zobrazila pro každou buňku, a také informace o záhlavích, zápatích a počtu řádků a oddílů v tabulce.
  • UITableViewDelegate – Objective-C protokol, který je modelován v Xamarin.iOS jako třída. Zpracovává výběr, úpravy funkcí a další volitelné funkce tabulky.

V tomto dokumentu všechny příklady používají UITableViewSource a ignorují tyto dvě třídy. Jsou zde zmíněny, protože všechny Objective-C příklady, které najdete v dokumentaci společnosti Apple, na ně odkazují, takže je užitečné pochopit, co dělají (a že místo toho můžete místo toho použít UITableViewSource Xamarin.iOS).