forked from MicrosoftDocs/xamarin-docs
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* First draft rewrite of most of the doc * Updated author per discussion w/ conceptdev * Added images * Removed SDLC links and updated "Get STarted" * Images linked up with some resulting language changes * Fixed spelling error in images 😣 * Acrolinx cleanup * Broken link fixes * What is Forms progress commit * Content tweaks and screenshots added * Moved What Is Xamarin to root of xamarin. * Renamed the What Is Forms file * Another file move after some discussion * Added redirect to manage file move * Removed old page image files * Added TOC link * Some image and doc updates * Created some screenshots for xam page * minor updates to what is xf doc * PR feedback applied * Minor missed change * Moved file and updated TOC * Remove file leak from another branch
- Loading branch information
1 parent
09bc69d
commit ecc4ec9
Showing
19 changed files
with
195 additions
and
101 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file removed
BIN
-36.6 KB
...ross-platform/get-started/introduction-to-mobile-development-images/android.png
Binary file not shown.
Binary file removed
BIN
-22.5 KB
docs/cross-platform/get-started/introduction-to-mobile-development-images/ios.png
Binary file not shown.
99 changes: 0 additions & 99 deletions
99
docs/cross-platform/get-started/introduction-to-mobile-development.md
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file added
BIN
+59.6 KB
docs/get-started/what-is-xamarin-forms-images/xamarin-forms-app-cropped.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+25.7 KB
docs/get-started/what-is-xamarin-forms-images/xamarin-forms-architecture.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,88 @@ | ||
--- | ||
title: "What is Xamarin.Forms?" | ||
description: "This article introduces Xamarin.Forms and related libraries." | ||
ms.prod: xamarin | ||
ms.assetid: C1E24DB9-3099-4F79-BB88-10AABF7D4614 | ||
author: profexorgeek | ||
ms.author: jusjohns | ||
ms.date: 09/18/2019 | ||
--- | ||
|
||
# What is Xamarin.Forms? | ||
|
||
[![Screenshots of example Xamarin.Forms application in iOS and Android](what-is-xamarin-forms-images/xamarin-forms-app-cropped.png)](what-is-xamarin-forms-images/xamarin-forms-app.png#lightbox) | ||
|
||
Xamarin.Forms is an open-source UI framework. Xamarin.Forms allows developers to build Android, iOS, and Windows applications from a single shared codebase. | ||
|
||
Xamarin.Forms allows developers to create user interfaces in XAML with code-behind in C#. These interfaces are rendered as performant native controls on each platform. | ||
|
||
## Who Xamarin.Forms is for | ||
|
||
Xamarin.Forms is for developers with the following goals: | ||
|
||
- Share UI layout and design across platforms. | ||
- Share code, test and business logic across platforms. | ||
- Write cross-platform apps in C# with Visual Studio. | ||
|
||
## How Xamarin.Forms works | ||
|
||
![Xamarin.Forms architecture diagram](what-is-xamarin-forms-images/xamarin-forms-architecture.png) | ||
|
||
Xamarin.Forms provides a consistent API for creating UI elements across platforms. This API can be implemented in either XAML or C# and supports databinding for patterns such as Model-View-ViewModel (MVVM). | ||
|
||
At runtime, Xamarin.Forms utilizes platform renderers to convert the cross-platform UI elements into native controls on Android, iOS and UWP. The allows developers to get native look, feel and performance while realizing the benefits of code sharing across platforms. | ||
|
||
Xamarin.Forms applications typically consist of a shared .NET Standard library and individual platform projects. The shared library contains the XAML or C# views and any business logic such as services, models or other code. The platform projects contain any platform-specific logic or packages the application requires. | ||
|
||
Xamarin.Forms uses Xamarin to run .NET applications natively across platforms. For more information about Xamarin, see [What is Xamarin?](~/get-started/what-is-xamarin.md). | ||
|
||
## Additional tools | ||
|
||
Xamarin.Forms has a large ecosystem of NuGet packages that add diverse functionality to applications. This section describes a few commonly-used NuGet packages. | ||
|
||
### Xamarin.Essentials | ||
|
||
Xamarin.Essentials is a library that provides cross-platform APIs for native device features. Like Xamarin itself, Xamarin.Essentials is an abstraction that simplifies the process of accessing native utilities. Some examples of utilities provided by Xamarin.Essentials include: | ||
|
||
- Device info | ||
- File system | ||
- Accelerometer | ||
- Phone dialer | ||
- Text-to-speech | ||
- Screen lock | ||
|
||
For more information, see [Xamarin.Essentials](~/essentials/index.md). | ||
|
||
### Shell | ||
|
||
Xamarin.Forms Shell reduces the complexity of mobile application development by providing the fundamental features that most applications require. Some examples of features provided by Shell include: | ||
|
||
- Common navigation experience | ||
- URI-based navigation scheme | ||
- Integrated search handler | ||
|
||
For more information, see [Xamarin.Forms Shell](~/xamarin-forms/app-fundamentals/shell/index.md) | ||
|
||
### Platform-specifics | ||
|
||
Xamarin.Forms provides a common API that renders native controls across platforms, but a specific platform may have functionality that doesn't exist on other platforms. For example, the Android platform has native functionality for Fast Scrolling in a `ListView` but iOS does not. Xamarin.Forms platform-specifics allow you to utilize functionality that is only available on a specific platform without creating custom renderers or effects. | ||
|
||
Xamarin.Forms includes pre-built solutions for a variety of platform-specific functionality. For more information, see: | ||
|
||
- [Xamarin.Forms platform-specifics](~/xamarin-forms/platform/platform-specifics/index.md) | ||
- [Android platform-specifics](~/xamarin-forms/platform/android/index.md) | ||
- [iOS platform-specifics](~/xamarin-forms/platform/ios/index.md) | ||
- [Windows platform-specifics](~/xamarin-forms/platform/windows/index.md) | ||
|
||
### Material Visual | ||
|
||
Xamarin.Forms Material Visual is used to apply Material Design rules to Xamarin.Forms applications. Xamarin.Forms 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. | ||
|
||
For more information, see [Xamarin.Forms Material Visual](~/xamarin-forms/user-interface/visual/material-visual.md) | ||
|
||
## Related links | ||
|
||
- [Get started with Xamarin.Forms](~/xamarin-forms/index.yml) | ||
- [Xamarin.Essentials](~/essentials/index.md) | ||
- [Xamarin.Forms Shell](~/xamarin-forms/app-fundamentals/shell/index.md) | ||
- [Xamarin.Forms Material Visual](~/xamarin-forms/user-interface/visual/material-visual.md) |
Binary file added
BIN
+25.6 KB
docs/get-started/what-is-xamarin-images/android-architecture-cropped.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.