[Перевод] Продолжайте полет с Xamarin.Forms 4.4

Мы пообщались с нашими разработчиками, которые делают уйму мобильных приложений каждый год, и они сказали: «Мы не можем вспомнить, когда в последний раз мы делали мобильное приложение, которое НЕ включало бы в себя карусель.» Итак, мы рады представить новый элемент управления CarouselView в Xamarin.Forms 4.4.0. Кроме того также представляем IndicatorView для отображения страниц и элементов с каруселью. А также SwipeView для предоставления контекстных действий для любого элемента в CollectionView. Тема выпуска каруселей была бы неполной без демонстрации новой поддержки GIF-анимации для изображений. Приступим.

vxexeoki5fnnyktncrfp8ogtwjk.jpeg

Фичи Xamarin.Forms 4.4


GIF-анимация — это отличный и простой способ добавить анимацию в ваше приложение для лучшей связи с пользователем, обращая его внимание на некоторые действия или детали. Конечно, это также отлично подходит для гифок с котами. Image это все, что вам нужно, вместе со свойством IsAnimationPlaying для включения или выключения автовоспроизведения.

Цикл анимации будет идти по умолчанию. Чтобы остановить анимацию установите IsAnimationPlaying на ложь.

14a37e42f898e81a5f16aebb2df3dca5.gif

Вот и все, у вас есть анимации! Это идеально подходит для небольших изображений, особенно для тех, которые встроены в ваше приложение. Настройки зацикливания изображения GIF соблюдаются. Убедитесь, что вы используете быстрые рендеры на Android для лучшего опыта пользователей.

CarouselView и IndicatorView


Построенный на том же базовом элементе управления, что и CollectionView, новый CarouselView упрощает добавление многофункциональных каруселей в ваше приложение, независимо от того, прокручиваете ли вы горизонтально или вертикально. С CollectionView вы получаете:

  • ItemsLayout
  • ItemsSource
  • ItemTemplate
  • EmptyTemplate

19075033b32cee78cd81f0181e9af34e.gif


    
        
            h01.jpg
            h02.jpg
            h03.jpg
            h04.jpg
        
    
    
        
            
        
    


Вы также получаете некоторые специфические для карусели свойства для управления такими вещами, как расстояние, на которое должны «peek» предыдущие и следующие элементы.

20cda182c74edaade0d5bbb6019784fa.gif



Продвинутый совет: В приведенном выше примере вы также заметите, что предыдущий и следующий элементы масштабируются и смещаются. Вы можете достичь этого прямо сейчас с помощью поведения и изменения макета при прокрутке. Когда мы выпустим 4.5, вы сможете использовать визуальные состояния, чтобы упростить это.

Чтобы добавить IndicatorView, вы размещаете его в любом месте, а затем связываете его с CarouselView по имени:


// implementation here


c2152874a04b025cfa7a0a1544fc3afa.gif

Для получения более подробной информации обо всех мощных вещах, которые вы можете сделать с CarouselView и IndicatorView, обратитесь к документации.

Заметка:  Ранее выпущенный NuGet Xamarin.Forms.CarouselView (Preview) будет заархивирован и больше не будет выпускаться. Если вы использовали этот элемент управления, вы можете удалить NuGet и обновить пространство имен кода. Мы работали над поддержанием согласованности API, но вам может потребоваться настроить несколько вещей. GitHub

SwipeView


Этот элемент управления обычно находится в списке элементов, позволяя пользователю проводить пальцем в любом направлении, чтобы открыть контекстные кнопки для общих действий, таких как редактирование или удаление. Чтобы использовать этот элемент управления, просто «оберните» его вокруг любого элемента, к которому вы хотите добавить поведение. По умолчанию SwipeItem получает заголовок и значок, а также команду или обработчик щелчка. Если вы хотите добавить что-то более сложное, вы можете сделать это с помощью шаблона.

favfighters.gif


        
                
                        
                                
                                        
                                
                        
                
        
 
        
        
          // content here
        


Приведенный выше пример и многое другое было опубликовано в блоге нашего талантливого члена команды Хавьера Суареса Руиса.

Вы также можете использовать платформенную специфику для управления режимом смахивания на Android и iOS. Больше деталей о SwipeView ищите в документации.

Начните работу с Xamarin.Forms 4.4 сегодня


Чтобы начать работу с Xamarin.Forms 4.4, обновите или установите его из менеджера пакетов NuGet. Если вы обновляете предыдущую версию, учтите, что Xamarin.Forms и Xamarin.Essentials теперь зависят от поддержки Android 28.0.0.3. Поэтому вы захотите обновить их вместе с любыми другими используемыми вами пакетами, которые могут зависеть от библиотек поддержки Android.

Не забудьте включить новые функции предварительного просмотра, используя SetFlags, если вы хотите их использовать. Чтобы сделать это глобально для всех платформ в вашем решении, добавьте следующее в ваш App.xaml.cs:

public App()
{
    InitializeComponent();
 
    Device.SetFlags(new[] { 
        "CarouselView_Experimental", 
        "IndicatorView_Experimental",
        "SwipeView_Experimental" 
    } );
 
    MainPage = new AppShell();
}

© Habrahabr.ru