С выходом Xamarin 4, вышли и Xamarin.Forms 2.0, включающий новые функиции и оптимизации, чтобы помочь вам создавать больше нативных, кросс-платформенных, мобильных приложений. В дополнение к ListView - стратегия кэширования, сужающие жесты и новые свойства, появившиеся в первой публичной превью версии Xamarin.Forms для Windows 10 (UWP) приложений. Хотя Xamarin.Forms уже поддерживает Windows Phone и Windows Store, Windows 10 представляет собой универсальный Windows-проект, который может предназначаться как для настольных, так и мобильных платформ, что позволит вам распрастранить ваше приложение на большее кол-во устройств.

Промо статьи

Начало

Прежде, чем вы начнете создавать универсальные приложения Windows 10 с Xamarin.Forms, есть несколько необходимых требований, которые должны быть установлены:

Как только вы все установили, пора перейти к готовому Xamarin.Forms проекту. Xamarin.Forms 2.0 не только добавляют предварительную поддержку для приложений Windows 10, но и множество дополнительных функций и оптимизаций для ваших мобильных приложений.

Для начала зайдем в менеджер Nuget пакетов вашей Visual Studio.

Управление Nuget пакетами

Выберите фильтр “Upgrade available” и обновите все ваши Nuget пакеты, для Xamarin.Forms.

Обновление пакетов

Visual Studio может предложить перезапуститься после этого шага.

Добавляем универсальное приложение Windows

После того как все ваши Nuget пакеты обновлены, настало время, чтобы добавить пустой универсальный проект Windows. Его можно найти в разделе Add New Project -> Windows -> Universal -> Blank App.

Шаблон UWP проекта

Добавление Nuget пакетов & PCL/Shared Project ссылок

Когда вы создаете новый проект Xamarin.Forms, все необходимые ссылки и NuGet-пакеты добавляются автоматически. Однако для существующих проектов Xamarin.Forms, которые хотят поддерживать UWP, формы должны быть добавлены вручную. Как? Во-первых, добавьте Xamarin.Forms. Щелкните правой кнопкой по вашему решению (Solution) и найдите пункт “Manage NuGet Packages…” и в фильтре выберите “Installed”. Найдите Xamarin.Forms и выберите UWP проект для установки последней версии пакета.

Добавление Xamarin.Forms в UWP проекту

Теперь, добавьте ваш общий код, который содержит Модели, Представления и ViewModels. В приложении UWP щелкнуть правой кнопкой по “References” и выбрать “Add Reference”. В пункте “Projects” вы найдете все проекты в решении. Найдите свой PCL или Shared проект, проверьте его и нажмите “OK”.

Управление зависимостями

Обновление App.xaml.cs

У всех приложений Windows есть App.xaml для “низкоуровневой” конфигурации приложения. Точно так же, как XAML страница в Xamarin.Forms, у этой страницы есть C# code-behind для обработки событий жизненного цикла. Откройте его, и вы найдете метод OnLaunched.

Найдите следующую строку кода:

rootFrame.NavigationFailed += OnNavigationFailed;

и добавьте вызов Xamarin.Forms метода Init:

Xamarin.Forms.Forms.Init (e);

Обновление MainPage.xaml

Откройте MainPage.xaml приложения Windows 10 и удалите Grid по умолчанию, чтобы теперь страница была абсолютно пуста. Затем, добавьте новое пространство имен в XAML и измените Page, чтобы была Xamarin.Forms Page:

<forms:WindowsPage xmlns:forms="using:Xamarin.Forms.Platform.UWP"
	...>
</forms:WindowsPage>

Обновление MainPage.xaml.cs

Обновите code-behind файл, чтобы инициализировать ваш Xamarin.Forms приложение:

public sealed partial class MainPage
{
	public MainPage()
	{
		InitializeComponent();
		LoadApplication (new YOUR_NAMESPACE.App());
	}
}

Замените YOUR_NAMESPACE пространством имен, которое используете вы, в котором находится класс App.cs.

Конфигурация приложения и деплой

Иногда Visual Studio может не собирать ново-добавленный проект. Чтобы гарантировать, что проект будет собираться и деплоиться на устройство, щелкните правой кнопкой по решению и откройте менеджер конфигурации. Проверьте приложение UWP, флаги build и deploy, они должны быть активны!

Менеджер конфигураций

Добавьте изображения и другие Nuget пакеты

Последний шаг, просто добавить любое изображение или любой из Nuget пакетов или плагинов для Xamarin, которые вы можете иметь в качестве зависимостей. Убедитесь, что каждая из этих зависимостей имеей поддержку Windows 10 (UWP), перед использованием.

Узнать больше, обратная связь

Чтобы узнать больше обо всех новых функциях в Xamarin.Forms 2.0 обязательно прочтите примечания к выпуску. Полный исходный код примера (приложения MyWeather), вы можете посмотреть на GitHub. Поддержка Windows 10 (UWP) находится еще не в финальной стадии, поэтому есть возможность, что вы можете столкнуться с некоторыми шероховатостями. Помогите сделать Xamarin.Forms для UWP лучше, пожалуйста, не забудьте оставить отзыв, сообщив о проблеме, если таковые возникли.


Оригинал

Теги: xamarin forms, xamarin, uwp, c#, перевод