Xamarin.Forms Kurz entry
Než se pustíte do tohoto kurzu, měli byste úspěšně dokončit tyto položky:
- Vytvořte svůj první Xamarin.Forms rychlý start k aplikaci .
- Kurz k objektu StackLayout
V tomto kurzu se naučíte:
- Vytvořte v XAML.Xamarin.Forms
Entry
- Reakce na změny textu v objektu
Entry
- Přizpůsobení chování
Entry
V sadě Visual Studio 2019 nebo Visual Studio pro Mac vytvoříte jednoduchou aplikaci, která předvádí, jak přizpůsobit chování objektu Entry
. Na následujících snímcích obrazovky je zachycena finální aplikace:
K zobrazení změn uživatelského rozhraní bez opětovného sestavení aplikace použijete také Opětovné načítání za provozu Xamarin.Forms XAML.
Vytvoření vstupu
K dokončení tohoto kurzu byste měli mít Visual Studio 2019 (nejnovější vydanou verzi) s nainstalovanou sadou funkcí Vývoj mobilních aplikací pomocí .NET. Kromě toho budete potřebovat spárovaný Mac pro sestavení aplikace z kurzu v iOSu. Informace o instalaci platformy Xamarin najdete v článku Instalace Xamarinu. Informace o připojení sady Visual Studio 2019 k hostiteli buildu pro Mac najdete v článku Spárování s počítačem Mac pro vývoj na platformě Xamarin.iOS.
Spusťte Visual Studio a vytvořte novou prázdnou Xamarin.Forms aplikaci s názvem EntryTutorial.
Důležité
Fragmenty kódu C# a XAML v tomto kurzu vyžadují, aby řešení mělo název EntryTutorial. Použití jiného názvu způsobí při kopírování kódu z tohoto kurzu do řešení chyby sestavení.
Další informace o knihovně .NET Standard, která se vytvoří, najdete v tématu Anatomie Xamarin.Forms aplikace v podrobném Xamarin.Forms kurzu Rychlý start.
V Průzkumníkovi řešení v projektu EntryTutorial poklikáním otevřete soubor MainPage.xaml. Pak v souboru MainPage.xaml odeberte veškerý kód šablony a nahraďte ho následujícím kódem:
<?xml version="1.0" encoding="utf-8"?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="EntryTutorial.MainPage"> <StackLayout Margin="20,35,20,20"> <Entry Placeholder="Enter text" /> </StackLayout> </ContentPage>
Tento kód deklarativně definuje uživatelské rozhraní pro stránku, která se skládá z objektu
Entry
v objektuStackLayout
. VlastnostEntry.Placeholder
určuje zástupný text, který se ukáže při prvním zobrazení objektuEntry
.Na panelu nástrojů sady Visual Studio stiskněte tlačítko Spustit (trojúhelníkové tlačítko, která se podobá tlačítku Přehrát), aby se aplikace spustila ve zvoleném vzdáleném simulátoru iOSu nebo emulátoru Androidu:
V sadě Visual Studio zastavte aplikaci.
Reakce na změny textu
V souboru MainPage.xaml můžete upravit deklaraci objektu
Entry
tak, aby nastavila obslužnou rutinu pro událostiTextChanged
aCompleted
:<Entry Placeholder="Enter text" TextChanged="OnEntryTextChanged" Completed="OnEntryCompleted" />
Tento kód nastaví událost
TextChanged
na obslužnou rutinu události s názvemOnEntryTextChanged
a událostCompleted
na obslužnou rutinu události s názvemOnEntryCompleted
. Obě obslužné rutiny událostí vytvoříme v následujícím kroku.V Průzkumníkovi řešení v projektu EntryTutorial rozbalte uzel MainPage.xaml a poklikáním otevřete soubor MainPage.xaml.cs. Potom v souboru MainPage.xaml.cs přidejte do třídy obslužné rutiny událostí
OnEntryTextChanged
aOnEntryCompleted
:void OnEntryTextChanged(object sender, TextChangedEventArgs e) { string oldText = e.OldTextValue; string newText = e.NewTextValue; } void OnEntryCompleted(object sender, EventArgs e) { string text = ((Entry)sender).Text; }
Když se text v objektu
Entry
změní, spustí se metodaOnEntryTextChanged
. Argumentsender
je objektEntry
odpovídající za vyvolání událostiTextChanged
a dá se použít pro přístup k objektuEntry
. ArgumentTextChangedEventArgs
poskytuje starou a novou textovou hodnotu (před změnou textu a po ní).Při dokončení zadávání textu do objektu
Entry
stisknutím klávesy Return se spustí metodaOnEntryCompleted
. Argumentsender
je objektEntry
odpovídající za vyvolání událostiTextChanged
a dá se použít pro přístup k objektuEntry
.Na panelu nástrojů sady Visual Studio stiskněte tlačítko Spustit (trojúhelníkové tlačítko, která se podobá tlačítku Přehrát), aby se aplikace spustila ve zvoleném vzdáleném simulátoru iOSu nebo emulátoru Androidu:
Nastavte zarážky v těchto dvou obslužných rutinách událostí, zadejte text do objektu
Entry
a sledujte vyvolání událostíTextChanged
aCompleted
.Další informace o událostech naleznete v tématu Události a interaktivita v průvodci Xamarin.Forms položkami.
Entry
Přizpůsobení chování
V souboru MainPage.xaml můžete úpravou deklarace objektu
Entry
přizpůsobit jeho chování:<Entry Placeholder="Enter password" MaxLength="15" IsSpellCheckEnabled="false" IsTextPredictionEnabled="false" IsPassword="true" />
Tento kód nastavuje vlastnosti, které přizpůsobují chování objektu
Entry
. VlastnostMaxLength
omezuje délku vstupu povolenou pro objektEntry
a vlastnostIsSpellCheckEnabled
je nastavená nafalse
a zakazuje kontrolu pravopisu. Podobně je vlastnostIsTextPredictionEnabled
nastavená nafalse
, aby se zakázalo prediktivní vkládání textu a automatické prediktivní vkládání textu. Kromě toho vlastnostIsPassword
zajišťuje, že se zadávané znaky maskují pomocí znaku hesla (černé kolečko).Poznámka:
V některých scénářích zadávání textu, jako je například zadávání hesla, není kontrola pravopisu a prediktivní vkládání textu žádoucí a proto by měly být vypnuty.
Pokud aplikace stále běží, uložte změny do souboru a uživatelské rozhraní aplikace se v simulátoru nebo emulátoru aktualizuje automaticky. V ostatních případech na panelu nástrojů sady Visual Studio stiskněte tlačítko Spustit (trojúhelníkové tlačítko, které se podobá tlačítku Přehrát), aby se aplikace spustila ve zvoleném vzdáleném simulátoru iOSu nebo emulátoru Androidu. Zadejte text do objektu
Entry
a sledujte, jak se každý znak nahradí znakem masky hesla. Všimněte si také, že maximální počet znaků, které můžete zadat, je 15:V sadě Visual Studio zastavte aplikaci.
Další informace o přizpůsobení
Entry
chování naleznete v průvodci Xamarin.Forms položkami .
Gratulujeme!
Blahopřejeme k dokončení tohoto kurzu, ve kterém jste se naučili provádět tyto akce:
- Vytvořte v XAML.Xamarin.Forms
Entry
- Reakce na změny textu v objektu
Entry
- Přizpůsobení chování
Entry
Další kroky
Další informace o základech vytváření mobilních aplikací najdete Xamarin.Formsv kurzu Editor.
Související odkazy
Máte s touto částí nějaké problémy? Pokud ano, dejte nám prosím vědět, abychom tuto část mohli vylepšit.