How to create Carousel sample in Xamarin.Forms.iOS platform
Carousel control allows navigating through image data in an interactive way so that they can be viewed or selected. Also, provides various customization options for its item arrangements. We can get the view of Carousel from any one of the following ways,
- Using CarouselItem
- Using ItemTemplate
The below steps illustrate how to create the carousel control in Xamarin.Forms iOS platforms.
Step 1: For getting the carousel control, need to add the following assemblies in your Xamarin.Forms project.
Project | Assemblies required |
PCL | pcl\Syncfusion.SfCarousel.XForms.dll
|
iOS (Unified)
| iOS-unified\Syncfusion.SfCarousel.iOS.dll
|
Step 2: For getting the view of carousel control in iOS, need to add the SfCarouselRenderer() in AppDelegate class.
C#
public override bool FinishedLaunching(UIApplication app, NSDictionary options) { global::Xamarin.Forms.Forms.Init(); new SfCarouselRenderer(); LoadApplication(new App()); return base.FinishedLaunching(app, options); }
Create a carousel control using CarouselItem
C#
public partial class KBSolutionPage : ContentPage { public KBSolutionPage() { InitializeComponent(); SfCarousel sfCarousel = new SfCarousel(); sfCarousel.ItemWidth = 170; sfCarousel.ItemHeight = 250; ObservableCollection<SfCarouselItem> collectionOfItems = new ObservableCollection<SfCarouselItem>(); collectionOfItems.Add(new SfCarouselItem() { ImageName = "images1.png" }); collectionOfItems.Add(new SfCarouselItem() { ImageName = "images2.png" }); collectionOfItems.Add(new SfCarouselItem() { ImageName = "images3.png" }); collectionOfItems.Add(new SfCarouselItem() { ImageName = "images4.png" }); collectionOfItems.Add(new SfCarouselItem() { ImageName = "images5.png" }); collectionOfItems.Add(new SfCarouselItem() { ImageName = "images6.png" }); sfCarousel.DataSource = collectionOfItems; this.Content = sfCarousel; } }
Create a carousel control using ItemTemplate
C#
public partial class KBSolutionPage : ContentPage { public KBSolutionPage() { InitializeComponent(); SfCarousel sfCarousel = new SfCarousel(); sfCarousel.ItemWidth = 170; sfCarousel.ItemHeight = 250; var carouselModel = new List<CarouselModel> { new CarouselModel ("image1.png"), new CarouselModel ("image2.png"), new CarouselModel ("image3.png"), new CarouselModel ("image4.png"), new CarouselModel ("image5.png") }; var carouselModelDataTemplate = new DataTemplate(() => { var grid = new Grid(); var nameLabel = new Image(); nameLabel.SetBinding(Image.SourceProperty, "Image"); grid.Children.Add(nameLabel); return grid; }); sfCarousel.ItemTemplate = carouselModelDataTemplate; sfCarousel.DataSource = carouselModel; this.Content = sfCarousel; } } public class CarouselModel { public CarouselModel(string imagestr) { Image = imagestr; } private string _image; public string Image { get { return _image; } set { _image = value; } } }