Xamarin.Forms Samouczek dotyczący wpisu
Zanim podejmiesz próbę ukończenia tego samouczka, musisz pomyślnie ukończyć następujące szkolenia:
- Skompiluj swój pierwszy Xamarin.Forms przewodnik Szybki start dotyczący aplikacji .
- Samouczek dotyczący obiektu StackLayout.
Z tego samouczka dowiesz się, jak wykonywać następujące czynności:
- Utwórz element Xamarin.Forms
Entry
w języku XAML. - Reagowanie na zmianę tekstu w obiekcie
Entry
. - Dostosowywanie zachowania obiektu
Entry
.
Użyjesz programu Visual Studio 2019 lub Visual Studio dla komputerów Mac, aby utworzyć prostą aplikację, która pokazuje, jak dostosować zachowanie elementu Entry
. Na poniższych zrzutach ekranu przedstawiono ostateczną wersję aplikacji:
Użyjesz również Przeładowywanie na gorąco XAML, Xamarin.Forms aby zobaczyć zmiany interfejsu użytkownika bez ponownego kompilowania aplikacji.
Tworzenie wpisu
Do ukończenia tego samouczka jest potrzebny program Visual Studio 2019 (najnowsza wersja) z zainstalowanym pakietem roboczym Opracowywanie aplikacji mobilnych za pomocą środowiska .NET. Ponadto będzie potrzebny sparowany komputer Mac w celu kompilowania aplikacji samouczka w systemie iOS. Aby uzyskać informacje na temat instalowania platformy Xamarin, zobacz Instalowanie platformy Xamarin. Aby uzyskać informacje na temat łączenia programu Visual Studio 2019 z hostem kompilacji Mac, zobacz Parowanie z komputerem Mac w celu opracowywania aplikacji platformy Xamarin.iOS.
Uruchom program Visual Studio i utwórz nową pustą Xamarin.Forms aplikację o nazwie EntryTutorial.
Ważne
Fragmenty kodu w języku C# i XAML w tym samouczku wymagają, aby rozwiązanie miało nazwę EntryTutorial. Użycie innej nazwy spowoduje błędy kompilacji po skopiowaniu kodu z tego samouczka do rozwiązania.
Aby uzyskać więcej informacji na temat tworzonej biblioteki .NET Standard, zobacz Anatomia Xamarin.Forms aplikacji w przewodnikuXamarin.Forms Szybki start — szczegółowe omówienie.
W Eksploratorze rozwiązań w projekcie EntryTutorial kliknij dwukrotnie plik MainPage.xaml, aby go otworzyć. Następnie w pliku MainPage.xaml usuń cały kod szablonu i zastąp go następującym kodem:
<?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>
Ten kod deklaratywnie definiuje interfejs użytkownika dla strony, która składa się z obiektu
Entry
w obiekcieStackLayout
. WłaściwośćEntry.Placeholder
określa tekst zastępczy pokazywany po pierwszym wyświetleniu obiektuEntry
.Na pasku narzędzi programu Visual Studio naciśnij przycisk Uruchom (trójkątny przycisk przypominający przycisk odtwarzania), aby uruchomić aplikację w wybranym zdalnym symulatorze systemu iOS lub emulatorze systemu Android:
Zatrzymaj aplikację w programie Visual Studio.
Reagowanie na zmiany w tekście
W pliku MainPage.xaml zmodyfikuj deklarację obiektu
Entry
tak, aby określała program obsługi dla zdarzeńTextChanged
iCompleted
:<Entry Placeholder="Enter text" TextChanged="OnEntryTextChanged" Completed="OnEntryCompleted" />
W tym kodzie dla zdarzenia
TextChanged
ustawiono program obsługi zdarzeń o nazwieOnEntryTextChanged
, a dla zdarzeniaCompleted
— program obsługi zdarzeń o nazwieOnEntryCompleted
. Oba programy obsługi zdarzeń zostaną utworzone w następnym kroku.W Eksploratorze rozwiązań w projekcie EntryTutorial rozwiń węzeł MainPage.xaml i kliknij dwukrotnie plik MainPage.xaml.cs, aby go otworzyć. Następnie w pliku MainPage.xaml.cs dodaj do klasy programy obsługi zdarzeń
OnEntryTextChanged
iOnEntryCompleted
: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; }
Gdy tekst w obiekcie
Entry
ulegnie zmianie, zostanie wykonana metodaOnEntryTextChanged
. Argumentsender
jest obiektemEntry
odpowiedzialnym za uruchamianie zdarzeniaTextChanged
i może posłużyć do uzyskiwania dostępu do obiektuEntry
. ArgumentTextChangedEventArgs
zawiera stare i nowe wartości tekstowe sprzed zmiany tekstu i po niej.Po zakończeniu wpisywania tekstu w obiekcie
Entry
przez naciśnięcie klawisza Return zostanie wykonana metodaOnEntryCompleted
. Argumentsender
jest obiektemEntry
odpowiedzialnym za uruchamianie zdarzeniaTextChanged
i może posłużyć do uzyskiwania dostępu do obiektuEntry
.Na pasku narzędzi programu Visual Studio naciśnij przycisk Uruchom (trójkątny przycisk przypominający przycisk odtwarzania), aby uruchomić aplikację w wybranym zdalnym symulatorze systemu iOS lub emulatorze systemu Android:
Ustaw punkty przerwania w dwóch programach obsługi zdarzeń, wprowadź tekst w obiekcie
Entry
, a następnie obserwuj uruchamianie zdarzeńTextChanged
iCompleted
.Aby uzyskać więcej informacji na temat zdarzeń
Entry
, zobacz Zdarzenia i interakcyjność w przewodniku Xamarin.Forms Entry .
Dostosowywanie zachowania
W pliku MainPage.xaml zmodyfikuj deklarację obiektu
Entry
, aby dostosować jego zachowanie:<Entry Placeholder="Enter password" MaxLength="15" IsSpellCheckEnabled="false" IsTextPredictionEnabled="false" IsPassword="true" />
Ten kod ustawia właściwości, które dostosowują zachowanie obiektu
Entry
. WłaściwośćMaxLength
ogranicza długości danych wejściowych, które są dozwolone dla obiektuEntry
, a właściwośćIsSpellCheckEnabled
jest ustawiona na wartośćfalse
, aby wyłączyć sprawdzanie pisowni. Ponadto właściwośćIsTextPredictionEnabled
jest ustawiona na wartośćfalse
w celu wyłączenia przewidywania tekstu i automatycznego przewidywania tekstu. Ponadto właściwośćIsPassword
gwarantuje, że wprowadzone znaki są maskowane symbolami znaku hasła (czarnymi okręgami).Uwaga
W niektórych scenariuszach wprowadzania tekstu, takich jak wprowadzanie hasła, sprawdzanie pisowni i przewidywanie tekstu jest niewskazane i powinno zostać wyłączone.
Jeśli aplikacja nadal działa, zapisz zmiany w pliku, a interfejs użytkownika aplikacji zostanie automatycznie zaktualizowany w symulatorze lub w emulatorze. W przeciwnym razie na pasku narzędzi programu Visual Studio naciśnij przycisk Uruchom (trójkątny przycisk przypominający przycisk odtwarzania), aby uruchomić aplikację w wybranym zdalnym symulatorze systemu iOS lub emulatorze systemu Android. Wprowadź tekst w obiekcie klasy
Entry
i sprawdź, czy każdy znak jest zastępowany znakiem maskowania hasła, a maksymalna liczba znaków, które można wprowadzić, to 15:Zatrzymaj aplikację w programie Visual Studio.
Aby uzyskać więcej informacji na temat dostosowywania zachowania, zobacz Przewodnik po wpisie
Entry
Xamarin.Forms .
Gratulacje!
Gratulujemy ukończenia tego samouczka, w którym przedstawiono sposób wykonywania następujących czynności:
- Utwórz element Xamarin.Forms
Entry
w języku XAML. - Reagowanie na zmianę tekstu w obiekcie
Entry
. - Dostosowywanie zachowania obiektu
Entry
.
Następne kroki
Aby dowiedzieć się więcej na temat podstaw tworzenia aplikacji Xamarin.Formsmobilnych w programie , przejdź do samouczka edytora.
Pokrewne łącza
Widzisz problem w tej sekcji? W takim przypadku prześlij opinię, abyśmy mogli udoskonalić tę sekcję.