public async void ChangeSizeOfTabs() { UpdateNoBookmarks(); for (int i = 0; i < selectTabItems.Length; i++) { bool sel = selectedTabItem == i; _ = selectTabLabels[i].ScaleTo(sel ? 1.1 : 0.9, 150, Easing.SinOut); selectTabLabels[i].FontAttributes = sel ? FontAttributes.Bold : FontAttributes.None; selectTabLabels[i].TextColor = sel ? Color.FromHex("#FFF") : Color.FromHex("#c9c9c9"); } bool bookmarkVis = selectedTabItem == 0; SetHeight(); BookHolder.IsEnabled = bookmarkVis; Top100Stack.IsEnabled = !bookmarkVis; BookHolder.IsVisible = bookmarkVis; Top100Stack.IsVisible = !bookmarkVis; _ = Top100Stack.FadeTo(bookmarkVis ? 0 : 1); if (selectedTabItem > 0) { var _movieIndex = selectedTabItem - 1; if (MovieIndex != _movieIndex) { MovieIndex = _movieIndex; IndexChanged(); } } await BookHolder.FadeTo(bookmarkVis? 1 : 0); }
async void SetRecs(bool isFromSizeChange = false, int?height = null, int?width = null) { if (isFromSizeChange) { BookHolder.Opacity = 0; } await Device.InvokeOnMainThreadAsync(async() => { int perCol = ((width ?? Application.Current.MainPage.Width) < (height ?? Application.Current.MainPage.Height)) ? 3 : 6; for (int i = 0; i < Bookmarks.Children.Count; i++) // GRID { Grid.SetColumn(Bookmarks.Children[i], i % perCol); Grid.SetRow(Bookmarks.Children[i], i / perCol); } // int row = (int)Math.Floor((Bookmarks.Children.Count - 1) / (double)perCol); // Recommendations.HeightRequest = (RecPosterHeight + Recommendations.RowSpacing) * (total / perCol); Bookmarks.HeightRequest = (bookmarkLabelTransY + RecPosterHeight + Bookmarks.RowSpacing) * (((Bookmarks.Children.Count - 1) / perCol) + 1) - 7 + Bookmarks.RowSpacing; //Bookmarks.WidthRequest = Application.Current.MainPage.Width < Application.Current.MainPage.Height ? Application.Current.MainPage.Width : Application.Current.MainPage.Height; if (isFromSizeChange) { await Task.Delay(100); _ = BookHolder.FadeTo(1, 75); } }); }
async void SetRecs(bool isFromSizeChange = false, int?height = null, int?width = null) { if (isFromSizeChange) { BookHolder.Opacity = 0; } await Device.InvokeOnMainThreadAsync(async() => { int perCol = ((width ?? Application.Current.MainPage.Width) < (height ?? Application.Current.MainPage.Height)) ? 3 : 6; // int row = (int)Math.Floor((Bookmarks.Children.Count - 1) / (double)perCol); // Recommendations.HeightRequest = (RecPosterHeight + Recommendations.RowSpacing) * (total / perCol); var lay = new GridItemsLayout(perCol, ItemsLayoutOrientation.Vertical); lay.VerticalItemSpacing = 5; lay.HorizontalItemSpacing = 5; BookmarkView.ItemsLayout = lay; BookmarkView.HeightRequest = Math.Ceiling(bookmarkPosters.Count / (float)perCol) * 200 + 20; //(bookmarkLabelTransY + RecPosterHeight + Bookmarks.RowSpacing) * (((Bookmarks.Children.Count - 1) / perCol) + 1) - 7 + Bookmarks.RowSpacing; //Bookmarks.WidthRequest = Application.Current.MainPage.Width < Application.Current.MainPage.Height ? Application.Current.MainPage.Width : Application.Current.MainPage.Height; if (isFromSizeChange) { await Task.Delay(100); _ = BookHolder.FadeTo(1, 75); } }); }