Zobrazit automaticky otevíraná okna
Zobrazení výstrahy, vyžádání uživatele k výběru nebo zobrazení výzvy je běžné úlohy uživatelského rozhraní. Xamarin.Forms má tři metody Page pro interakci s uživatelem prostřednictvím automaticky otevíraných oken: DisplayAlert , DisplayActionSheet a DisplayPromptAsync . Jsou vykresleny s odpovídajícími nativními ovládacími prvky na každé platformě.
Zobrazit výstrahu
Xamarin.FormsPlatformy s podporou všech platforem mají modální automaticky otevíraná okna upozorňující na uživatele nebo se na ně dotazují jednoduché otázky. Chcete-li zobrazit tyto výstrahy v nástroji Xamarin.Forms , použijte DisplayAlert metodu na jakémkoli Page . Následující řádek kódu ukazuje uživateli jednoduchou zprávu:
await DisplayAlert ("Alert", "You have been alerted", "OK");
Tento příklad neshromažďuje informace od uživatele. Výstraha se zobrazí v modálním a poté, co byla zrušena, uživatel pokračuje v interakci s aplikací.
DisplayAlertMetodu lze také použít k zachycení reakce uživatele tím, že prezentují dvě tlačítka a vrátí boolean . Chcete-li získat odpověď z výstrahy, zadejte text pro obě tlačítka a await metodu. Jakmile uživatel vybere jednu z možností, odpověď se vrátí vašemu kódu. Poznamenejte async si await klíčová slova a v následujícím ukázkovém kódu:
async void OnAlertYesNoClicked (object sender, EventArgs e)
{
bool answer = await DisplayAlert ("Question?", "Would you like to play a game", "Yes", "No");
Debug.WriteLine ("Answer: " + answer);
}
DisplayAlertMetoda má také přetížení, která přijímají FlowDirection argument, který určuje směr, ve kterém se v rámci výstrahy Flow prvky uživatelského rozhraní. Další informace o směru toku najdete v tématu lokalizace zprava doleva.
Upozornění
Ve výchozím nastavení se na UWP při zobrazení výstrahy zobrazí všechny přístupové klíče, které jsou definované na stránce za výstrahou, i přesto se můžou aktivovat. Další informace najdete v tématu VisualElement Access Keys na Windows.
Průvodce uživateli prostřednictvím úkolů
UIActionSheet je běžným prvkem uživatelského rozhraní v iOS. Xamarin.FormsDisplayActionSheet Metoda umožňuje zahrnout tento ovládací prvek do aplikací pro různé platformy a vykreslovat nativní alternativy v Androidu a UWP.
Chcete-li zobrazit seznam akcí, awaitDisplayActionSheet v jakémkoli Page případě předejte zprávy a popisky tlačítek jako řetězce. Metoda vrátí popisek řetězce tlačítka, na které uživatel kliknul. Tady vidíte jednoduchý příklad:
async void OnActionSheetSimpleClicked (object sender, EventArgs e)
{
string action = await DisplayActionSheet ("ActionSheet: Send to?", "Cancel", null, "Email", "Twitter", "Facebook");
Debug.WriteLine ("Action: " + action);
}
destroyTlačítko se vykreslí odlišně pro ostatní tlačítka v iOS a může být ponecháno null nebo zadáno jako třetí parametr řetězce. Následující příklad používá destroy tlačítko:
async void OnActionSheetCancelDeleteClicked (object sender, EventArgs e)
{
string action = await DisplayActionSheet ("ActionSheet: SavePhoto?", "Cancel", "Delete", "Photo Roll", "Email");
Debug.WriteLine ("Action: " + action);
}
DisplayActionSheetMetoda má také přetížení, které přijímá FlowDirection argument, který určuje směr toku prvků uživatelského rozhraní v seznamu akcí. Další informace o směru toku najdete v tématu lokalizace zprava doleva.
Zobrazit výzvu
Chcete-li zobrazit výzvu, zavolejte na DisplayPromptAsync Any a Page předejte název a zprávu jako string argumenty:
string result = await DisplayPromptAsync("Question 1", "What's your name?");
Výzva se zobrazí modálním způsobem:
Při klepnutí na tlačítko OK se zadaná odpověď vrátí jako string . Pokud se tlačítko Storno klepne na, null vrátí se.
Úplný seznam argumentů pro DisplayPromptAsync metodu je:
titletypstringje název, který se má zobrazit v příkazovém řádku.messagetypstringje zpráva, která se má zobrazit v příkazovém řádku.accepttypstringje text tlačítka přijmout. Toto je volitelný argument, jehož výchozí hodnota je OK.canceltypstringje text pro tlačítko Storno. Toto je volitelný argument, jehož výchozí hodnota je Cancel.placeholdertypstringje zástupný text, který se má zobrazit v příkazovém řádku. Toto je volitelný argument, jehož výchozí hodnota jenull.maxLengthtypintje maximální délka reakce uživatele. Toto je volitelný argument, jehož výchozí hodnota je-1.keyboardtypKeyboardje typ klávesnice, který se má použít pro odpověď uživatele. Toto je volitelný argument, jehož výchozí hodnota jeKeyboard.Default.initialValuetypstringje předem definovaná odpověď, která se zobrazí, a kterou lze upravit. Toto je volitelný argument, jehož výchozí hodnota je prázdnástring.
Následující příklad ukazuje nastavení některých volitelných argumentů:
string result = await DisplayPromptAsync("Question 2", "What's 5 + 5?", initialValue: "10", maxLength: 2, keyboard: Keyboard.Numeric);
Tento kód zobrazí předdefinovanou odpověď 10, omezuje počet znaků, které mohou být vloženy na hodnotu 2, a zobrazí numerickou klávesnici pro vstup uživatele:
Snímek obrazovky s
iOS a Androidu
Upozornění
Ve výchozím nastavení se na UWP při zobrazení výzvy zobrazí všechny přístupové klíče, které jsou definované na stránce za výzvou, i přesto se můžou aktivovat. Další informace najdete v tématu VisualElement Access Keys na Windows.
Stažení ukázky



iOS a Androidu