Co to jest Xamarin.Forms ?What is Xamarin.Forms?

Zrzuty ekranu przykładowej Xamarin.Forms aplikacji w systemach iOS i AndroidScreenshots of example Xamarin.Forms application in iOS and Android

Xamarin.Formsjest strukturą interfejsu użytkownika Open Source. is an open-source UI framework. Xamarin.Formsumożliwia deweloperom tworzenie aplikacji Xamarin. Android, Xamarin. iOS i Windows z pojedynczej udostępnionej bazy kodu. allows developers to build Xamarin.Android, Xamarin.iOS, and Windows applications from a single shared codebase.

Xamarin.Formsumożliwia deweloperom tworzenie interfejsów użytkownika w języku XAML przy użyciu kodu w języku C#. allows developers to create user interfaces in XAML with code-behind in C#. Te interfejsy są renderowane jako wykonywanie natywnych kontrolek na każdej platformie.These interfaces are rendered as performant native controls on each platform.

Kto Xamarin.Forms jest przeznaczony dlaWho Xamarin.Forms is for

Xamarin.FormsProgram jest przeznaczony dla deweloperów z następującymi celami: is for developers with the following goals:

  • Udostępnianie układu interfejsu użytkownika i projektowanie między platformami.Share UI layout and design across platforms.
  • Udostępnianie kodu, testów i logiki biznesowej na różnych platformach.Share code, test and business logic across platforms.
  • Zapisuj aplikacje dla wielu platform w języku C# za pomocą programu Visual Studio.Write cross-platform apps in C# with Visual Studio.

Jak Xamarin.Forms działaHow Xamarin.Forms works

Xamarin.Formsdiagram architekturyXamarin.Forms architecture diagram

Xamarin.Formszapewnia spójny interfejs API do tworzenia elementów interfejsu użytkownika na różnych platformach. provides a consistent API for creating UI elements across platforms. Ten interfejs API można zaimplementować w języku XAML lub C# i obsługuje powiązanie danych dla wzorców, takich jak Model-View-ViewModel (MVVM).This API can be implemented in either XAML or C# and supports databinding for patterns such as Model-View-ViewModel (MVVM).

W środowisku uruchomieniowym program Xamarin.Forms korzysta z modułu renderowania platformy w celu przekonwertowania elementów interfejsu użytkownika między platformami na natywne kontrolki na platformie Xamarin. Android, Xamarin. iOS i platformy UWP.At runtime, Xamarin.Forms utilizes platform renderers to convert the cross-platform UI elements into native controls on Xamarin.Android, Xamarin.iOS and UWP. Pozwala to deweloperom na uzyskanie natywnego wyglądu, działania i wydajności przy jednoczesnym wykorzystaniu korzyści z udostępniania kodu na różnych platformach.This allows developers to get the native look, feel and performance while realizing the benefits of code sharing across platforms.

Xamarin.Formsaplikacje zwykle składają się z udostępnionej biblioteki .NET Standard i projektów poszczególnych platform. applications typically consist of a shared .NET Standard library and individual platform projects. Biblioteka udostępniona zawiera widoki XAML lub C# oraz dowolną logikę biznesową, taką jak usługi, modele lub inny kod.The shared library contains the XAML or C# views and any business logic such as services, models or other code. Projekty platformy zawierają dowolną logikę lub pakiety wymagane przez aplikację.The platform projects contain any platform-specific logic or packages the application requires.

Xamarin.FormsProgram korzysta z platformy Xamarin do natywnego uruchamiania aplikacji platformy .NET na wielu platformach. uses the Xamarin platform to run .NET applications natively across platforms. Aby uzyskać więcej informacji na temat platformy Xamarin, zobacz co to jest platforma Xamarin?.For more information about the Xamarin platform, see What is Xamarin?.

Dodatkowe funkcjeAdditional functionality

Xamarin.Formsma duży ekosystem bibliotek, które umożliwiają dodawanie różnorodnych funkcji do aplikacji. has a large ecosystem of libraries that add diverse functionality to applications. W tej sekcji opisano niektóre z tych dodatkowych funkcji.This section describes some of this additional functionality.

Xamarin.Essentials

Xamarin.Essentialsto biblioteka, która udostępnia interfejsy API dla wielu platform dla natywnych funkcji urządzenia. is a library that provides cross-platform APIs for native device features. Podobnie jak platforma Xamarin, Xamarin.Essentials jest abstrakcją ułatwiającą proces uzyskiwania dostępu do natywnych narzędzi.Like Xamarin itself, Xamarin.Essentials is an abstraction that simplifies the process of accessing native utilities. Przykłady narzędzi zapewnianych przez program Xamarin.Essentials obejmują:Some examples of utilities provided by Xamarin.Essentials include:

  • Informacje o urządzeniuDevice info
  • System plikówFile system
  • AkcelerometrAccelerometer
  • TelefonPhone dialer
  • Zamiana tekstu na mowęText-to-speech
  • Blokada ekranuScreen lock

Aby uzyskać więcej informacji, zobacz Xamarin.Essentials .For more information, see Xamarin.Essentials.

PowłokaShell

Xamarin.FormsPowłoka zmniejsza złożoność tworzenia aplikacji mobilnych, dostarczając podstawowe funkcje wymagane przez większość aplikacji. Shell reduces the complexity of mobile application development by providing the fundamental features that most applications require. Niektóre przykłady funkcji udostępnianych przez powłokę obejmują:Some examples of features provided by Shell include:

  • Wspólne środowisko nawigacyjneCommon navigation experience
  • Schemat nawigacji oparty na identyfikatorze URIURI-based navigation scheme
  • Zintegrowana procedura obsługi wyszukiwaniaIntegrated search handler

Aby uzyskać więcej informacji, zobacz Xamarin.Forms ShellFor more information, see Xamarin.Forms Shell

Specyficzne dla platformyPlatform-specifics

Xamarin.Formszapewnia wspólny interfejs API, który renderuje natywne kontrolki między platformami, ale konkretną platformą może być funkcjonalność, która nie istnieje na innych platformach. provides a common API that renders native controls across platforms, but a specific platform may have functionality that doesn't exist on other platforms. Na przykład platforma systemu Android ma natywne funkcje szybkiego przewijania w systemie, ListView ale w systemie iOS nie jest.For example, the Android platform has native functionality for Fast Scrolling in a ListView but iOS does not. Xamarin.Formsspecyficzne dla platformy umożliwiają korzystanie z funkcji, które są dostępne tylko na określonej platformie bez tworzenia niestandardowych efektów renderujących i. platform-specifics allow you to utilize functionality that is only available on a specific platform without creating custom renderers or effects.

Xamarin.Formsobejmuje wstępnie utworzone rozwiązania dla różnych funkcji specyficznych dla platformy. includes pre-built solutions for a variety of platform-specific functionality. Aby uzyskać więcej informacji, zobacz:For more information, see:

Material VisualMaterial Visual

Xamarin.FormsWizualizacja materiału jest używana do zastosowania reguł projektowania materiału do Xamarin.Forms aplikacji. Material Visual is used to apply Material Design rules to Xamarin.Forms applications. Xamarin.FormsWizualizacja materiału wykorzystuje Właściwość wizualną, aby selektywnie zastosować niestandardowe elementy renderujące do interfejsu użytkownika, dzięki czemu aplikacja ma spójny wygląd i działanie w systemach iOS i Android. Material Visual utilizes the Visual property to selectively apply custom renderers to the UI, resulting in an application with a consistent look and feel across iOS and Android.

Aby uzyskać więcej informacji, zobacz temat Xamarin.Forms Wizualizacja materiałuFor more information, see Xamarin.Forms Material Visual