Wprowadzanie tekstu na platformie Xamarin.iOS
Akceptowanie danych wejściowych tekstu użytkownika jest realizowane za pomocą UITextField
funkcji dla danych wejściowych jednowierszowych i elementu UITextView w przypadku tekstu z możliwością edycji wielowierszowej. Możesz przeciągnąć jedną z tych kontrolek na ekran i kliknąć dwukrotnie, aby ustawić tekst początkowy.
Na poniższych zrzutach ekranu przedstawiono ikony tych kontrolek znajdujące się w okienku przybornika w Visual Studio dla komputerów Mac:
Po nazwaniu gniazda i zapisaniu pliku Storyboard Visual Studio dla komputerów Mac zaktualizuje .designer.cs
klasę częściową i możesz dodać kod języka C#, który odwołuje się do kontrolki do pliku klasy. Każda kontrolka ma własne unikatowe właściwości i zdarzenia, do których można uzyskać dostęp w kodzie języka C#.
UITextField
Kontrolka UITextField
jest najczęściej używana do akceptowania pojedynczego wiersza tekstu, takiego jak nazwa użytkownika lub hasło. Poniżej przedstawiono niektóre opcje dostosowywania kontrolki:
Te kontrolki zostały wyjaśnione poniżej:
- Symbol zastępczy — jest to opcjonalne. W przypadku ustawienia jest on wyświetlany, gdy pole tekstowe jest puste, zwykle w celu wyjaśnienia użytkownikowi, jakie dane wejściowe są oczekiwane.
- Wyczyść przycisk — określa, kiedy standardowy przycisk wyczyść (szary okrąg z (X)) pojawia się w polu tekstowym, co pozwala użytkownikowi szybko wyczyścić tekst. Może być trwale ukryta, trwale widoczna lub wyświetlana w zależności od tego, czy pole jest edytowane.
- Minimalny rozmiar czcionki i Dopasuj dopasuj — umożliwia automatyczne dostosowanie rozmiaru czcionki w celu dopasowania do dłuższego tekstu i uniemożliwienie obcinania, ale ograniczone do rozmiaru nie mniejszego niż określony rozmiar.
- Wielkie litery — czy automatycznie wielką literą są wyrazy, zdania czy wszystkie dane wejściowe.
- Korekta — określa, czy włączono sprawdzanie pisowni i sugestie.
- Klawiatura — steruje stylem klawiatury wyświetlanym dla danych wejściowych i w związku z tym, jakie klawisze są dostępne na klawiaturze. Obejmuje to konsolę numerów, Telefon Pad, Adres e-mail, adres URL oraz inne opcje.
- Wygląd — określa styl wyglądu klawiatury i będzie ciemny lub jasny.
- Return Key — zmień etykietę na klawisz Return, aby lepiej odzwierciedlić akcję, która zostanie podjęta. Obsługiwane wartości to Go, Join, Next, Route, Done i Search.
- Secure — określa, czy dane wejściowe są maskowane (na przykład dla danych wejściowych hasła).
Jeśli pole UITextField o nazwie textfield1
zostało dodane do ekranu za pomocą projektanta, możesz ustawić lub zmienić jego właściwości w języku C# w następujący sposób:
textfield1.Placeholder = "type email here...";
textfield1.KeyboardType = UIKeyboardType.EmailAddress;
textfield1.ReturnKeyType = UIReturnKeyType.Send;
textfield1.MinimumFontSize = 17f;
textfield1.AdjustsFontSizeToFitWidth = true;
Platforma Xamarin.iOS udostępnia wyliczenia tam, gdzie jest to konieczne, aby ułatwić wybór żądanych ustawień, takich jak UIKeyboardType
i UIReturnKeyType
w powyższym fragmencie kodu.
Programowe wyświetlanie tekstu
Jeśli nie chcesz projektować ekranu za pomocą projektanta lub jeśli chcesz dynamicznie dodać jakiś tekst w czasie wykonywania, możesz utworzyć i wyświetlić pole UITextField programowo w ViewDidLoad
metodzie kontrolera widoku w następujący sposób:
var frame = new CGRect(10, 10, 300, 40);
textfield1 = new UITextField(frame);
View.Add(textfield1);
UITextView
Kontrolka UITextView
może służyć do wyświetlania tekstu tylko do odczytu lub akceptowania wprowadzania tekstu w wielu wierszach. Ma wiele takich samych opcji jak UITextField
(takich jak wielkie litery, korekta itp.).
Określone właściwości obejmują:
- Zachowanie — określa, czy tekst jest edytowalny, czy tylko do odczytu.
- Wykrywanie — wykrywa i konwertuje wprowadzone dane na klikalne elementy, takie jak numery telefonów, które mogą wyzwolić połączenie, adresy, które stają się linkami do Mapy, adresy URL otwierane w przeglądarce Safari lub daty i godziny, które stają się zdarzeniami w kalendarzu.
Jeśli element UITextView został dodany do ekranu z projektantem, możesz ustawić lub zmienić jego właściwości w następujący sposób:
textview1.Text = "Lorem ipsum..."; // lots of text can go here
textview1.Editable = true;
textview1.DataDetectorTypes = UIDataDetectorType.PhoneNumber | UIDataDetectorType.Link;