public CarouselSampleSrollView() { _carouselView = new CardCarouselView { ItemTemplate = new DataTemplate(GetCardItem), Children = { new IndicatorsControl { SelectedIndicatorStyle = new Style(typeof(Frame)) { BasedOn = DefaultIndicatorItemStyles.DefaultSelectedIndicatorItemStyle, Setters = { new Setter { Property = BackgroundColorProperty, Value = Color.Red } } } } } }; _carouselView.SetBinding(CardsView.ItemsSourceProperty, nameof(CarouselSampleScrollViewModel.Items)); Title = "CarouselView scroll"; Content = _carouselView; BindingContext = new CarouselSampleScrollViewModel(); }
private Grid OnboardingGrid(PanCardView.CarouselView carouselView) { Grid grid = new Grid(); OnboardingTemplate template = new OnboardingTemplate(); template.signUpEmailButton.Pressed += SignUpEmailButton_Pressed; grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(352, GridUnitType.Absolute) }); grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(32, GridUnitType.Absolute) }); grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength((App.Current.MainPage.Height / 11.83333), GridUnitType.Absolute) }); grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(8, GridUnitType.Absolute) }); grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength((App.Current.MainPage.Height / 11.83333), GridUnitType.Absolute) }); grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(8, GridUnitType.Absolute) }); grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength((App.Current.MainPage.Height / 11.83333), GridUnitType.Absolute) }); grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1, GridUnitType.Star) }); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) }); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(8, GridUnitType.Absolute) }); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) }); grid.BackgroundColor = Color.White; grid.RowSpacing = 0; grid.ColumnSpacing = 0; // must use baseclass Grid to SetColumnSpan, cannot use instantiated object grid.Children.Add(carouselView, 0, 0); Grid.SetColumnSpan(carouselView, 3); grid.Children.Add(template.signInButton, 0, 6); Grid.SetColumnSpan(template.signInButton, 3); grid.Children.Add(template.signUpEmailButton, 0, 4); Grid.SetColumnSpan(template.signUpEmailButton, 3); grid.Children.Add(template.signUpFacebookButton, 0, 2); grid.Children.Add(template.signUpGoogleButton, 2, 2); return(grid); }
public static void Preserve() { CardsView.Preserve(); CarouselView.Preserve(); CoverFlowView.Preserve(); ArrowControl.Preserve(); LeftArrowControl.Preserve(); RightArrowControl.Preserve(); CircleFrame.Preserve(); IndicatorItemView.Preserve(); IndicatorsControl.Preserve(); ParentScrollView.Preserve(); }
public CarouselSampleListView() { BindingContext = new CarouselSampleListViewModel(); var carousel = new CardCarouselView { ItemTemplate = new ListTemplateSelector() }; carousel.SetBinding(CardsView.ItemsSourceProperty, nameof(CarouselSampleListViewModel.Cards)); Content = carousel; }
public CarouselSampleListView() { BindingContext = new CarouselSampleListViewModel(); var carousel = new CardCarouselView { OppositePanDirectionDisablingThreshold = 1, ItemTemplate = new ListTemplateSelector() }; carousel.SetBinding(CardsView.ItemsSourceProperty, nameof(CarouselSampleListViewModel.Cards)); Content = carousel; }
public CarouselSampleDoubleView() { var cardsView = new CardCarouselView { ItemTemplate = new DataTemplate(GetCardItem) }; cardsView.SetBinding(CardsView.ItemsSourceProperty, "Items"); cardsView.SetBinding(CardsView.SelectedIndexProperty, "CurrentIndex"); Title = "CarouselView Double Carousel"; Content = cardsView; BindingContext = new CarouselSampleDoubleViewModel(); }
private void InitLayout() { if (Content == null) { _headerContainerGrid = new Grid { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.Start, BackgroundColor = HeaderBackgroundColor, MinimumHeightRequest = 50, ColumnSpacing = 0 }; _horizontalScroll = new ScrollView { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.Fill, BackgroundColor = Color.Transparent, VerticalScrollBarVisibility = ScrollBarVisibility.Never, HorizontalScrollBarVisibility = ScrollBarVisibility.Never, Orientation = ScrollOrientation.Horizontal, Content = _headerContainerGrid }; _carouselView = new CardCarouselView { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, BackgroundColor = BodyBackgroundColor, HeightRequest = ContentHeight, BindingContext = this, IsCyclical = false }; _carouselView.ItemAppearing += _carouselView_PositionSelected; _mainContainerSL = new StackLayout { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Children = { _horizontalScroll, _carouselView }, Spacing = 0 }; Content = _mainContainerSL; } }
public CarouselSampleViewNoTemplate() { Title = "CarouselSampleViewNoTemplate"; var carousel = new CardCarouselView { HeightRequest = 200, ItemsSource = new[] { new BoxView { Color = Color.Red }, new BoxView { Color = Color.Blue }, new BoxView { Color = Color.Yellow } }, IsCyclical = false }; var button = new Button { Text = "Select last" }; button.Clicked += (sender, args) => { carousel.SelectedIndex = 2; }; Content = new ParentScrollView { Content = new StackLayout { Children = { new StackLayout { Children = { carousel } }, button } } }; }
public Onboarding() { Padding = new Thickness(0); _carouselView = new PanCardView.CarouselView { ItemTemplate = new DataTemplate(GetCardItem), Children = { new IndicatorsControl { SelectedIndicatorStyle = new Style(typeof(Frame)) { BasedOn = DefaultIndicatorItemStyles.DefaultSelectedIndicatorItemStyle, Setters = { new Setter { Property = BackgroundColorProperty, Value = Color.FromRgb(70, 120, 200) } } }, UnselectedIndicatorStyle = new Style(typeof(Frame)) { BasedOn = DefaultIndicatorItemStyles.DefaultUnselectedIndicatorItemStyle, Setters = { new Setter { Property = BackgroundColorProperty, Value = Color.FromRgb(70, 120, 200) }, new Setter { Property = OpacityProperty, Value = 0.5 } } } } } }; _carouselView.SetBinding(CardsView.ItemsSourceProperty, nameof(OnboardingItemsSource.AllItems)); Title = "Onboarding"; Content = OnboardingGrid(_carouselView); BindingContext = new OnboardingItemsSource(); }
private View GetCardItem() { var label = new Label { TextColor = Color.White, FontSize = 50, HorizontalTextAlignment = TextAlignment.Center, FontAttributes = FontAttributes.Bold }; label.SetBinding(Label.TextProperty, "Number"); AbsoluteLayout.SetLayoutFlags(label, AbsoluteLayoutFlags.All); AbsoluteLayout.SetLayoutBounds(label, new Rectangle(.5, 1, 1, .5)); var cardsView = new CardCarouselView { ItemTemplate = new DataTemplate(() => { var subCard = new ContentView(); subCard.SetBinding(BackgroundColorProperty, "Color"); return(subCard); }) }; cardsView.SetBinding(CardsView.ItemsSourceProperty, "Items"); cardsView.SetBinding(CardsView.SelectedIndexProperty, "CurrentIndex"); AbsoluteLayout.SetLayoutFlags(cardsView, AbsoluteLayoutFlags.All); AbsoluteLayout.SetLayoutBounds(cardsView, new Rectangle(.5, 0, 1, .5)); return(new AbsoluteLayout { BackgroundColor = Color.Black, Children = { cardsView, label } }); }
public PolicyPage GetPolicy() { _carouselView = new PanCardView.CarouselView { ItemTemplate = new DataTemplate(GetPolicyCard) }; // instantiate account to access policies DemoAccount demoAccount = new DemoAccount(); Account account = demoAccount.GetAccount(); List <Policy> source = new List <Policy>(); source = account.GetPolicies(); _carouselView.ItemsSource = source; _carouselView.SelectedIndex = TappedIndex; Content = _carouselView; // topToolbar replaces NavigationBar NavigationPage.SetTitleView(this, new PolicyView().TopToolbar); return(this); }
public SavedPage() { BookInfo.fromrec = false; Label Saved = new Label { Text = "My Books", FontSize = Device.GetNamedSize(NamedSize.Title, typeof(Label)), TextColor = Color.Blue, FontAttributes = FontAttributes.Bold, HorizontalOptions = LayoutOptions.CenterAndExpand, Margin = new Thickness(0, 60, 0, 0) }; Label NoBooks = new Label { Text = "No books saved!", FontSize = Device.GetNamedSize(NamedSize.Title, typeof(Label)), TextColor = Color.Blue, FontAttributes = FontAttributes.Bold, HorizontalOptions = LayoutOptions.CenterAndExpand, Margin = new Thickness(0, 60, 0, 0) }; Label booktitle = new Label { Text = "", FontSize = Device.GetNamedSize(NamedSize.Title, typeof(Label)), TextColor = Color.DarkBlue, Margin = new Thickness(125, 100, 0, 0), }; Label author = new Label { Margin = new Thickness(125, 20, 0, 0), Text = "", FontSize = Device.GetNamedSize(NamedSize.Title, typeof(Label)), TextColor = Color.DarkSlateBlue, }; ImageButton backarrow = new ImageButton { Source = ImageSource.FromFile("FlippedArrow.png"), Scale = 0.2, Margin = new Thickness(-275, -105, 0, 0), }; CarouselView savedbookimages = new CarouselView { Scale = 4, Margin = new Thickness(20, 40, 0, 0) }; Button ReadMore = new Button { Margin = new Thickness(55, 0, 60, 20), Text = "Read More", Font = Font.SystemFontOfSize(NamedSize.Title), HorizontalOptions = LayoutOptions.Center, BackgroundColor = Color.LightBlue, TextColor = Color.Black, IsVisible = false, }; ReadMore.Clicked += OnButtonClicked; savedbookimages.ItemsSource = savedBooks; backarrow.Clicked += backarrow_Clicked; if (!Reccomendation.prodevice) { savedbookimages.Scale = 4; } else if (Reccomendation.prodevice) { ReadMore.Margin = new Thickness(30, 40, 60, 20); savedbookimages.Margin = new Thickness(20, 90, 0, 0); booktitle.Margin = new Thickness(110, 100, 0, 0); author.Margin = new Thickness(105, 20, 0, 0); backarrow.Scale = .4; backarrow.Margin = new Thickness(-265, -95, 0, 0); } if (savedBooks.Count > 0) { NoBooks.Text = ""; ReadMore.IsVisible = true; } Content = new StackLayout { VerticalOptions = LayoutOptions.FillAndExpand, Children = { Saved, backarrow, savedbookimages, NoBooks, booktitle, author, ReadMore, } }; savedbookimages.ItemDisappearing += (sender, args) => { if (savedBooks.Count > 0) { disappearingbook = (BookCover)savedbookimages.SelectedItem; booktitle.Text = disappearingbook.thisbook.booktitle; author.Text = disappearingbook.thisbook.authorname; } }; }
public ImageViewer(FoodItem food) { NavigationPage.SetHasNavigationBar(this, false); int index = 0; CurrentIndex = index; bool indexSet = false; List <FoodItem> FoodItems = GlobalVariables.getFoodItems(); list = new Dictionary <int, byte[]>(); foreach (var i in FoodItems) { list.Add(i.ID, GlobalVariables.DeserializeStringToByteArray(i.IMGBYTES)); if (i == food && !indexSet) { index = list.Count - 1; indexSet = true; } } InitializeComponent(); PanCardView.CarouselView carouselView = new PanCardView.CarouselView { ItemTemplate = new DataTemplate(() => CardFactory.Creator.Invoke()), BackgroundColor = Color.Black }; carouselView.SetBinding(CardsView.CurrentContextProperty, nameof(ImageViewerModel.CurrentContext)); carouselView.SetBinding(CardsView.NextContextProperty, nameof(ImageViewerModel.NextContext)); carouselView.SetBinding(CardsView.PrevContextProperty, nameof(ImageViewerModel.PrevContext)); this.SetBinding(ImageViewer.CurrentIndexProperty, nameof(ImageViewerModel.CurrentIndex)); carouselView.SetBinding(CardsView.PanStartedCommandProperty, nameof(ImageViewerModel.PanStartedCommand)); carouselView.SetBinding(CardsView.PositionChangedCommandProperty, nameof(ImageViewerModel.PanPositionChangedCommand)); //ToolbarItem deleteOption = new ToolbarItem("Delete", "", new Action(() => { DeleteSelectedImage(); }), ToolbarItemOrder.Primary, 0); ToolbarItem editOption = new ToolbarItem("Edit", "", new Action(() => { Navigation.PushAsync(new EditDetailsPage(getCurrentID(), GlobalVariables.EntryType.UPDATE_ENTRY)); }), ToolbarItemOrder.Primary, 0); AbsoluteLayout UserPrefs = new AbsoluteLayout { Margin = 10 }; AbsoluteLayout.SetLayoutFlags(UserPrefs, AbsoluteLayoutFlags.All); AbsoluteLayout.SetLayoutBounds(UserPrefs, new Rectangle(1, 1, 1, 0.11)); StackLayout prefsView = new StackLayout(); AbsoluteLayout.SetLayoutFlags(prefsView, AbsoluteLayoutFlags.All); AbsoluteLayout.SetLayoutBounds(prefsView, new Rectangle(1, 1, 1, 1)); Grid grid = new Grid { HorizontalOptions = LayoutOptions.Start, VerticalOptions = LayoutOptions.Start, RowDefinitions = { new RowDefinition { Height = new GridLength(25, GridUnitType.Absolute) }, new RowDefinition { Height = new GridLength(25, GridUnitType.Absolute) } }, ColumnDefinitions = { new ColumnDefinition { Width = new GridLength(1, GridUnitType.Auto) }, new ColumnDefinition { Width = new GridLength(1, GridUnitType.Auto) } } }; Image healthIcon = new Image { HorizontalOptions = LayoutOptions.Start, VerticalOptions = LayoutOptions.Start, WidthRequest = 25, HeightRequest = 25, Source = ImageSource.FromResource("SelfControl.Resources.health_icon.png") }; Image frequencyIcon = new Image { HorizontalOptions = LayoutOptions.Start, VerticalOptions = LayoutOptions.Start, WidthRequest = 25, HeightRequest = 25, Source = ImageSource.FromResource("SelfControl.Resources.frequency_icon.png") }; healthRating = new Label { Text = "", FontSize = 15, VerticalTextAlignment = TextAlignment.Center, TextColor = Color.White }; frequencyRating = new Label { Text = "", FontSize = 15, VerticalTextAlignment = TextAlignment.Center, TextColor = Color.White }; grid.Children.Add(healthIcon, 0, 0); grid.Children.Add(healthRating, 1, 0); grid.Children.Add(frequencyIcon, 0, 1); grid.Children.Add(frequencyRating, 1, 1); prefsView.Children.Add(grid); UserPrefs.Children.Add(prefsView); carouselView.Children.Add(UserPrefs); Content = carouselView; ToolbarItems.Add(editOption); //ToolbarItems.Add(deleteOption); BindingContext = new ImageViewerModel(list, index); }
public CarouselSampleViewNoTemplate() { Title = "CarouselSampleViewNoTemplate"; var carousel = new CardCarouselView { HeightRequest = 200, WidthRequest = 400, //ItemsSource = new[] { ItemsSource = new ObservableCollection <object> { new { Source = "happyClass1.png", Color = Color.Red }, new { Source = "happyClass2.png", Color = Color.Green }, new { Source = "happyClass3.png", Color = Color.Gold }, new { Source = "happyClass4.png", Color = Color.Silver }, new { Source = "happyClass5.png", Color = Color.Blue }, new { Source = "happyClass6.png", Color = Color.Red }, new { Source = "happyClass7.png", Color = Color.Green }, new { Source = "happyClass8.png", Color = Color.Gold }, new { Source = "happyClass9.png", Color = Color.Silver }, new { Source = "happyClass10.png", Color = Color.White }, new { Source = "happyClass11.png", Color = Color.AliceBlue }, new { Source = "happyClass12.png", Color = Color.WhiteSmoke }, new { Source = "happyClass13.png", Color = Color.Black }, new { Source = "happyClass14.png", Color = Color.Black }, new { Source = "happyClass15.png", Color = Color.Black }, new { Source = "happyClass16.png", Color = Color.Black }, new { Source = "happyClass17.png", Color = Color.Black }, new { Source = "happyClass18.png", Color = Color.Black }, new { Source = "happyClass19.png", Color = Color.Black }, new { Source = "happyClass20.png", Color = Color.Black }, new { Source = "happyClass21.png", Color = Color.Black }, new { Source = "happyClass22.png", Color = Color.Black }, new { Source = "happyClass23.png", Color = Color.White }, new { Source = "happyClass24.png", Color = Color.LightYellow }, new { Source = "happyClass25.png", Color = Color.OliveDrab }, new { Source = "happyClass26.png", Color = Color.Black }, new { Source = "happyClass27.png", Color = Color.Black }, new { Source = "happyClass28.png", Color = Color.Black }, new { Source = "happyClass29.png", Color = Color.Black }, new { Source = "happyClass30.png", Color = Color.Black }, new { Source = "happyClass31.png", Color = Color.Black } //new BoxView { Color = Color.Red }, //new BoxView { Color = Color.Blue}, //new BoxView { Color = Color.Yellow} // new BoxView { source = "happyClass1.png", Color = Color.Red }, //new BoxView { Source = "happyClass2.png", Color = Color.Green }, //new BoxView { Source = "happyClass3.png" , Color = Color.Gold }, //new BoxView { Source = "happyClass4.png" , Color = Color.Silver }, //new BoxView { Source = "happyClass5.png", Color = Color.Blue }, //new BoxView { Source = "happyClass6.png", Color = Color.Red }, //new BoxView { Source = "happyClass7.png", Color = Color.Green }, //new BoxView { Source = "happyClass8.png" , Color = Color.Gold }, //new BoxView { Source = "happyClass9.png" , Color = Color.Silver }, //new BoxView { Source = "happyClass10.png", Color = Color.White }, //new BoxView { Source = "happyClass11.png", Color = Color.AliceBlue }, //new BoxView { Source = "happyClass12.png", Color = Color.WhiteSmoke }, //new BoxView { Source = "happyClass13.png", Color = Color.Black }, //new BoxView { Source = "happyClass14.png", Color = Color.Black }, //new BoxView { Source = "happyClass15.png", Color = Color.Black }, //new BoxView { Source = "happyClass16.png", Color = Color.Black }, //new BoxView { Source = "happyClass17.png", Color = Color.Black }, //new BoxView { Source = "happyClass18.png", Color = Color.Black }, //new BoxView { Source = "happyClass19.png", Color = Color.Black }, //new BoxView { Source = "happyClass20.png", Color = Color.Black }, //new BoxView { Source = "happyClass21.png", Color = Color.Black }, //new BoxView { Source = "happyClass22.png", Color = Color.Black }, //new BoxView { Source = "happyClass23.png", Color = Color.White }, //new BoxView { Source = "happyClass24.png", Color = Color.LightYellow }, //new BoxView { Source = "happyClass25.png", Color = Color.OliveDrab }, //new BoxView { Source = "happyClass26.png", Color = Color.Black }, //new BoxView { Source = "happyClass27.png", Color = Color.Black }, //new BoxView { Source = "happyClass28.png", Color = Color.Black }, //new BoxView { Source = "happyClass29.png", Color = Color.Black }, //new BoxView { Source = "happyClass30.png", Color = Color.Black }, //new BoxView { Source = "happyClass31.png", Color = Color.Black } }, IsCyclical = false }; var button = new Button { Text = "Select last" }; button.Clicked += (sender, args) => { carousel.SelectedIndex = 2; }; Content = new ParentScrollView { Content = new StackLayout { Children = { new StackLayout { Children = { carousel } }, button } } }; }