Udostępnij za pośrednictwem


Wprowadzenie do scenorysów na platformie Xamarin.Mac

Ten artykuł zawiera wprowadzenie do pracy z scenorysami w aplikacji Xamarin.Mac. Obejmuje tworzenie i konserwowanie interfejsu użytkownika aplikacji przy użyciu scenorysów i narzędzia Xcode Interface Builder.

Scenorysy umożliwiają tworzenie interfejsu użytkownika dla aplikacji Xamarin.Mac, która zawiera nie tylko definicje i kontrolki okna, ale także zawiera linki między różnymi oknami (za pośrednictwem segues) i stanów wyświetlania.

Przykładowy interfejs użytkownika w środowisku Xcode

Ten artykuł zawiera wprowadzenie do używania scenorysów do definiowania interfejsu użytkownika aplikacji Xamarin.Mac.

Co to są scenorysy?

Za pomocą scenorysów wszystkie interfejsy użytkownika aplikacji Xamarin.Mac można zdefiniować w jednej lokalizacji ze wszystkimi nawigacjami między poszczególnymi elementami i interfejsami użytkownika. Scenorysy dla platformy Xamarin.Mac działają w bardzo podobny sposób do scenorysów dla platformy Xamarin.iOS. Zawierają jednak inny zestaw typów segue z powodu różnych idiomów interfejsu.

Praca ze scenami

Jak wspomniano powyżej, scenorys definiuje cały interfejs użytkownika dla danej aplikacji podzielony na funkcjonalny przegląd kontrolerów widoku. W narzędziu Interface Builder programu Xcode każdy z tych kontrolerów mieszka we własnej scenie.

Przykładowy kontroler widoku

Każda scena reprezentuje daną parę widoków i kontrolerów widoku z zestawem wierszy (nazywanych Segues), które łączą każdą scenę w interfejsie użytkownika, pokazując w ten sposób ich relacje. Niektóre segues definiują sposób, w jaki jeden kontroler widoku zawiera jeden lub więcej podrzędnych widoków lub kontrolerów widoku. Inne segues zdefiniuj przejścia między kontrolerem widoku (na przykład wyświetlanie okna podręcznego lub okna dialogowego).

Przykładowa segue

Najważniejszą rzeczą do zapamiętania jest to, że każdy segue reprezentuje przepływ jakiejś formy danych między danym elementem interfejsu użytkownika aplikacji.

Praca z kontrolerami widoku

Kontrolery widoku definiują relacje między danym widokiem informacji w aplikacji dla komputerów Mac i modelem danych, który udostępnia te informacje. Każda scena najwyższego poziomu w scenie Scenorysu reprezentuje jeden kontroler widoku w kodzie aplikacji Xamarin.Mac.

Przykładowy kontroler widoku poślizgu

W ten sposób każdy kontroler widoku jest samodzielną parą wielokrotnego użytku zarówno wizualnej reprezentacji informacji (Widok), jak i logiki do prezentowania i kontrolowania tych informacji.

W danej scenie można wykonywać wszystkie czynności, które normalnie były obsługiwane przez poszczególne .xib pliki:

  • Umieść podglądy i kontrolki (takie jak przyciski i pola tekstowe).
  • Zdefiniuj pozycje elementów i ograniczenia układu automatycznego.
  • Podłączanie akcji i placówek w celu uwidocznienia elementów interfejsu użytkownika w kodzie.

Praca z segues

Jak wspomniano powyżej, Segues udostępnia relacje między wszystkimi scenami, które definiują interfejs użytkownika aplikacji. Jeśli znasz pracę z scenorysami w systemie iOS, wiesz, że segues dla systemu iOS zwykle definiuje przejścia między widokami pełnoekranowymi. Różni się to od systemu macOS, gdy segues zwykle definiuje "zawieranie" (gdzie jedna scena jest elementem podrzędnym nadrzędnej sceny).

W systemie macOS większość aplikacji zwykle grupuje swoje widoki w tym samym oknie przy użyciu elementów interfejsu użytkownika, takich jak podział widoków i kart. W przeciwieństwie do systemu iOS, gdzie widoki muszą być przenoszone na ekranie i poza nie, ze względu na ograniczoną ilość miejsca do wyświetlania fizycznego.

Biorąc pod uwagę tendencje systemu macOS do powstrzymania, istnieją sytuacje, w których są używane segues prezentacji, takie jak modalne okna, widoki arkuszy i popovery.

W przypadku korzystania z aplikacji Presentation Segues można zastąpić PrepareForSegue metodę nadrzędnego kontrolera widoku na potrzeby prezentacji w celu zainicjowania i zmiennych oraz podania dowolnych danych do prezentowanego kontrolera widoku.

Czasy projektowania i uruchamiania

W czasie projektowania (gdy układ interfejsu użytkownika w narzędziu Xcode Interface Builder) każdy element interfejsu użytkownika aplikacji jest podzielony na elementy składowe:

  • Sceny — które składają się z następujących elementów:
    • Kontroler widoku — definiujące relacje między widokami i danymi, które je obsługują.
    • Widoki i widoki podrzędne — rzeczywiste elementy tworzące interfejs użytkownika.
    • Zawieranie Segues — definiujące relacje nadrzędny-podrzędny między scenami.
  • Segues prezentacji — definiujące poszczególne tryby prezentacji.

Definiując w ten sposób każdy element, umożliwia ładowanie leniwe każdego elementu tylko w razie potrzeby w czasie wykonywania. W systemie macOS cały proces został zaprojektowany tak, aby umożliwić deweloperowi tworzenie złożonych, elastycznych interfejsów użytkownika, które wymagają minimalnego poziomu kodu zapasowego, aby umożliwić im pracę, a jednocześnie jest tak wydajny, jak to możliwe.

Scenorys — Szybki start

W przewodniku Szybki start dotyczącym scenorysu utworzymy prostą aplikację platformy Xamarin.Mac, która wprowadza kluczowe pojęcia dotyczące pracy z scenorysami w celu utworzenia interfejsu użytkownika. Przykładowa aplikacja będzie składać się z widoku rozlt zawierającego obszar zawartości i obszar Inspektor i będzie zawierać proste okno dialogowe Preferencji. Użyjemy segues, aby powiązać wszystkie elementy interfejsu użytkownika.

Praca ze scenorysami

W tej sekcji opisano szczegółowe informacje dotyczące pracy z scenorysami w aplikacji platformy Xamarin.Mac. Przyjrzymy się szczegółowo scenom i sposobom ich składania się z kontrolerów widoku i widoku. Następnie przyjrzymy się, jak sceny są powiązane razem z Segues. Na koniec przyjrzymy się pracy z niestandardowymi typami Segue.

Podsumowanie

W tym artykule przedstawiono szybką pracę z scenorysami w aplikacji platformy Xamarin.Mac. Zobaczyliśmy, jak utworzyć nową aplikację przy użyciu scenorysów i jak zdefiniować interfejs użytkownika. Zobaczyliśmy również, jak nawigować między różnymi oknami i stanami wyświetlania przy użyciu segues.