void ConfigureScreen() { //var navBar = ConfigureNavBar("Adicionar carro", true, true); var navBar = new StackLayout(); SearchEntry = new RoundedBorderedEntry() { CenteredPlaceholder = true, PlaceholderColor = ColorPalette.DarkBlue, Placeholder = "Qual o tipo do seu carro?".ToUpper(), FontAttributes = FontAttributes.Bold, FontSize = 15, TextColor = ColorPalette.DarkBlue, Padding = new Thickness(50, 30), BorderColor = ColorPalette.DarkBlue, BorderWidth = App.ScreenWidth / 72, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.CenterAndExpand }; this.SearchEntry.SizeChanged += OnSearchSizeChanged; SearchIcon = new Icon() { Color = ColorPalette.DarkBlue, FileName = "search.svg", HeightRequest = 25, WidthRequest = 25, VerticalOptions = LayoutOptions.CenterAndExpand, HorizontalOptions = LayoutOptions.StartAndExpand, Margin = new Thickness(15, 0, 0, 0) }; SearchIcon.SetBinding(VisualElement.IsVisibleProperty, new Binding(nameof(SearchEntry.Text), source: SearchEntry, converter: new ValueConverter((text) => string.IsNullOrWhiteSpace((string)text)))); SearchGrid = new Grid() { HorizontalOptions = LayoutOptions.FillAndExpand, Margin = new Thickness(20, 30, 20, 30), }; SearchGrid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(50, GridUnitType.Absolute) }); SearchGrid.ColumnDefinitions.Add(new ColumnDefinition()); SearchGrid.Children.Add(SearchEntry, 0, 0); SearchGrid.Children.Add(SearchIcon, 0, 0); Label textSubtitleLabel = new Label() { Text = "Tipos populares", FontSize = 14, TextColor = ColorPalette.Gray, Margin = new Thickness(20, 0, 0, 0), HorizontalOptions = LayoutOptions.FillAndExpand }; RoundedBorderedLabel subtitleLabel = new RoundedBorderedLabel(textSubtitleLabel, Color.Transparent, 0, ColorPalette.ExtraLightGray, new Thickness(0, 5), 0) { HorizontalOptions = LayoutOptions.FillAndExpand }; subtitleLabel.Content.HorizontalOptions = subtitleLabel.HorizontalOptions; CarSelectionList optionsList = new CarSelectionList() { ItemsSource = ViewModel.TypeOptions, VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, }; optionsList.SetBinding(ListView.SelectedItemProperty, new Binding(nameof(ViewModel.SelectedType))); RoundedButton confirmatioButton = new RoundedButton() { BackgroundColor = ColorPalette.LightBlue, TextColor = Color.White, FontAttributes = FontAttributes.Bold, Text = "Continuar".ToUpper(), Margin = new Thickness(50, 0, 50, 30), FontSize = 17, VerticalOptions = LayoutOptions.End, Padding = new Thickness(10), Command = ViewModel.SelectOption }; Content = new StackLayout() { Children = { navBar, SearchGrid, SearchEntry, subtitleLabel, optionsList, confirmatioButton } }; }
void ConfigureScreen() { NavBar = BaseContentPage.Instance.ConfigureNavBar("Adicionar carro", true); SearchEntry = new RoundedBorderedEntry() { CenteredPlaceholder = true, PlaceholderColor = ColorPalette.DarkBlue, Placeholder = "Qual a marca do seu carro?".ToUpper(), FontAttributes = FontAttributes.Bold, FontSize = 15, TextColor = ColorPalette.DarkBlue, BorderColor = ColorPalette.DarkBlue, BorderWidth = App.ScreenWidth / 72, HorizontalOptions = LayoutOptions.FillAndExpand, }; SearchIcon = new Icon() { HeightRequest = 25, WidthRequest = 25, VerticalOptions = LayoutOptions.CenterAndExpand, HorizontalOptions = LayoutOptions.StartAndExpand, Margin = new Thickness(15, 0, 0, 0), Color = ColorPalette.DarkBlue, FileName = "search.svg", }; SearchIcon.SetBinding(VisualElement.IsVisibleProperty, new Binding(nameof(SearchEntry.Text), source: SearchEntry, converter: new ValueConverter((text) => string.IsNullOrWhiteSpace((string)text)))); SearchGrid = new Grid() { HorizontalOptions = LayoutOptions.FillAndExpand, Margin = new Thickness(20, 30, 20, 30), }; SearchGrid.RowDefinitions.Add(new RowDefinition()); SearchGrid.ColumnDefinitions.Add(new ColumnDefinition()); Label textSubtitleLabel = new Label() { Text = "Marcas populares", FontSize = 14, TextColor = ColorPalette.Gray, Margin = new Thickness(20, 0, 0, 0), HorizontalOptions = LayoutOptions.FillAndExpand }; RoundedBorderedLabel subtitleLabel = new RoundedBorderedLabel(textSubtitleLabel, Color.Transparent, 0, ColorPalette.ExtraLightGray, new Thickness(0, 5), 0) { HorizontalOptions = LayoutOptions.FillAndExpand }; subtitleLabel.Content.HorizontalOptions = subtitleLabel.HorizontalOptions; int counter = 0; optionsList = new CarSelectionList() { ItemsSource = ViewModel.BrandOptions, VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, ItemTemplate = new DataTemplate(() => { var option = ViewModel.BrandOptions[counter]; CustomLabel label = new CustomLabel() { VerticalTextAlignment = TextAlignment.Center, CustomPadding = new Thickness(10, 0, 0, 0), Text = option.Name, FontSize = 16, TextColor = option == ViewModel.SelectedBrand ? ColorPalette.Pink : ColorPalette.Gray, FontAttributes = FontAttributes.Bold, BackgroundColor = Color.White }; CustomViewCell cell = new CustomViewCell(label) { View = label, SelectedTextColor = ColorPalette.Pink, NormalTextColor = label.TextColor, }; counter++; return(cell); }) }; optionsList.SetBinding(ListView.SelectedItemProperty, new Binding(nameof(ViewModel.SelectedBrand))); //optionsList.ItemTapped += ViewModel.OnItemTapped; if (App.IsAndroidSDKBelowMarshmallow) { optionsList.ItemSelected += (sender, args) => { ViewModel.SelectedBrand = args.SelectedItem as CarFilterInfo; optionsList.Layout(optionsList.Bounds); } } ; Button confirmatioButton = new Button() { BackgroundColor = ColorPalette.LightBlue, TextColor = Color.White, FontAttributes = FontAttributes.Bold, Text = "Continuar".ToUpper(), //Margin = new Thickness(50, 0, 50, 30), FontSize = 18, VerticalOptions = LayoutOptions.End, //Padding = new Thickness(10), BorderRadius = 18, Margin = 10, HeightRequest = 55, Command = ViewModel.SelectOption }; Children.Clear(); Children.Add(NavBar); Children.Add(SearchEntry); Children.Add(SearchGrid); Children.Add(subtitleLabel); Children.Add(optionsList); Children.Add(confirmatioButton); SearchEntry.SizeChanged += OnSearchSizeChanged; SearchEntry.Completed += OnTextChanged; }