Начало работы с Xamarin.Forms 2.0 и Windows 10 Preview
С выходом 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, есть несколько необходимых требований, которые должны быть установлены:
- Windows 10
- Visual Studio 2015
- Universal Windows Developer Tools
Как только вы все установили, пора перейти к готовому Xamarin.Forms проекту. Xamarin.Forms 2.0 не только добавляют предварительную поддержку для приложений Windows 10, но и множество дополнительных функций и оптимизаций для ваших мобильных приложений.
Для начала зайдем в менеджер Nuget пакетов вашей Visual Studio.
Выберите фильтр “Upgrade available” и обновите все ваши Nuget пакеты, для Xamarin.Forms.
Visual Studio может предложить перезапуститься после этого шага.
Добавляем универсальное приложение Windows
После того как все ваши Nuget пакеты обновлены, настало время, чтобы добавить пустой универсальный проект Windows. Его можно найти в разделе Add New Project -> Windows -> Universal -> Blank App .
Добавление Nuget пакетов & PCL/Shared Project ссылок
Когда вы создаете новый проект Xamarin.Forms, все необходимые ссылки и NuGet-пакеты добавляются автоматически. Однако для существующих проектов Xamarin.Forms, которые хотят поддерживать UWP, формы должны быть добавлены вручную. Как? Во-первых, добавьте Xamarin.Forms. Щелкните правой кнопкой по вашему решению (Solution) и найдите пункт “Manage NuGet Packages…” и в фильтре выберите “Installed”. Найдите 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 :
Обновление 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 в ОС Windows
Visual Studio 2019 и Visual Studio 2017 не поддерживают альфа- и бета-каналы и стабильные каналы так, как предыдущие версии. Вместо этого есть два варианта:
- выпуск — эквивалент стабильного канала в Visual Studio для Mac;
- предварительная версия — эквивалент альфа- и бета-каналов в Visual Studio для Mac.
Для пробного использования функций предварительной версии следует скачать установщик предварительной версии Visual Studio, который предложит установить предварительные версии Visual Studio параллельно со стабильной версией (версией выпуска). Дополнительные сведения о новых возможностях Visual Studio 2019 можно найти в заметках о выпуске.
Предварительная версия Visual Studio может включать соответствующие предварительные версии функциональных возможностей Xamarin, в том числе следующие:
- Xamarin.Forms
- Xamarin.iOS
- Xamarin.Android
- Xamarin Profiler
- Xamarin Inspector
- Симулятор iOS удаленной работы для Xamarin
На снимке экрана установщика предварительной версии ниже показаны параметры и предварительной версии, и выпуска (обратите внимание на номера версий, указанные серым цветом: версия 15.0 относится к выпуску, а версия 15.1 — к предварительной версии):
В процессе установки, если выполняется параллельная установка, может применяться псевдоним установки (чтобы версии можно было различить в меню «Пуск»), как показано ниже:
Удаление предварительной версии Visual Studio 2019
Установщик Visual Studio также следует использовать для удаления установленных предварительных версий Visual Studio 2019. Дополнительные сведения см. в руководстве по удалению Xamarin.
Отрисовка пользовательских элементов управления в средстве предварительного просмотра XAML
Пользовательские элементы управления иногда не работают должным образом в средстве предварительного просмотра XAML. Используйте инструкции, приведенные в этой статье, чтобы понять ограничения, связанные с предварительным просмотром пользовательских элементов управления.
Средство предварительного просмотра XAML устарело в Visual Studio 2019 версии 16.8 и Visual Studio для Mac версии 8.8 и заменено функцией XAML Горячая перезагрузка в Visual Studio 2019 версии 16.9 и Visual Studio для Mac версии 8.9. Дополнительные сведения о XAML Горячая перезагрузка см. в документации.
Базовый режим предварительной версии
Даже если вы не создали проект, средство предварительного просмотра XAML отрисовывает страницы. Пока вы не создадите, любой элемент управления, основанный на коде, будет отображать его базовый Xamarin.Forms тип. При создании проекта средство предварительного просмотра XAML попытается отобразить пользовательские элементы управления с включенной отрисовкой времени разработки. Если отрисовка завершается ошибкой, он будет отображать базовый Xamarin.Forms тип.
Включение отрисовки времени разработки для пользовательских элементов управления
Если вы делаете собственные пользовательские элементы управления или используете элементы управления из сторонней библиотеки, средство предварительного просмотра может отображать их неправильно. Пользовательские элементы управления должны принять участие в отрисовке времени разработки, чтобы отображаться в средстве предварительного просмотра, независимо от того, написали ли вы элемент управления или импортировали его из библиотеки. Создав элементы управления, добавьте [DesignTimeVisible(true)] его в класс элемента управления, чтобы отобразить его в средстве предварительного просмотра:
namespace MyProject < [DesignTimeVisible(true)] public class MyControl : BaseControl < // Your control's code here >>
В качестве примера используйте базовый класс ImageCirclePlugin в Джеймсе Монтемагно.
Элементы управления SkiaSharp
В настоящее время элементы управления SkiaSharp поддерживаются только при предварительном просмотре в iOS. Они не будут отображаться в предварительной версии Android.
Устранение неполадок
Xamarin.Forms Проверка версии
Убедитесь, что установлен по крайней мере Xamarin.Forms 3.6. Вы можете обновить Xamarin.Forms версию в NuGet.
Даже при использовании [DesignTimeVisible(true)] пользовательского элемента управления не отображается правильно.
Пользовательские элементы управления, которые сильно зависят от кода или внутренних данных, не всегда работают в средстве предварительного просмотра XAML. Вы можете сделать следующее:
- Перемещение элемента управления, поэтому оно не инициализируется, если включен режим конструктора
- Настройка данных времени разработки для отображения поддельных данных из серверной части
В средстве предварительного просмотра XAML показано сообщение об ошибке «Пользовательские элементы управления не отображаются должным образом».
Попробуйте очистить и перестроить проект или закрыть и повторно открыть XAML-файл.
Xamarin.Forms Previewer does not show up in Visual Studio Enterprise 2017
I am developing app using Xamarin in Visual Studio Enterprise 2017. I go to View -> Other Windows but there is no Xamarin.Forms Previewer. I am pretty sure It was still here last night. Screenshot Does anyone know what is happening? Thank you very much.
- xamarin.forms
- visual-studio-2017
1,580 4 4 gold badges 21 21 silver badges 37 37 bronze badges
asked Apr 12, 2018 at 8:31
141 3 3 silver badges 12 12 bronze badges
2 Answers 2
so I figured it out myself. It’s kind of easy. I am posting here just in case someone will need it in the future. We just need to go to Tools -> Extensions and Updates and then enable Xamarin.forms Previewer and done!