From 3744c6aa7241fb9ece19e981b0ee6e35f1697d05 Mon Sep 17 00:00:00 2001 From: Diogo Martinho Date: Mon, 23 Sep 2019 05:54:15 +0100 Subject: [PATCH 1/4] Update Android.csproj Xamarin.Android.Support.Core.Utils version --- .../CarouselViewChallenge.Android.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj b/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj index 1e33499..189d06f 100644 --- a/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj +++ b/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj @@ -54,7 +54,7 @@ - + @@ -101,4 +101,4 @@ - + \ No newline at end of file From c9cf1214337283b68c4d6571e352062a58e406d1 Mon Sep 17 00:00:00 2001 From: Diogo Martinho Date: Mon, 23 Sep 2019 05:54:38 +0100 Subject: [PATCH 2/4] Added android internet permission --- .../Properties/AndroidManifest.xml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Properties/AndroidManifest.xml b/CarouselViewChallenge/CarouselViewChallenge.Android/Properties/AndroidManifest.xml index f37a67c..7ebae72 100644 --- a/CarouselViewChallenge/CarouselViewChallenge.Android/Properties/AndroidManifest.xml +++ b/CarouselViewChallenge/CarouselViewChallenge.Android/Properties/AndroidManifest.xml @@ -1,6 +1,7 @@ - - - - - - + + + + + + + \ No newline at end of file From 8ff41e65f3cb134a9ac690bd0f59fbd304e6513a Mon Sep 17 00:00:00 2001 From: Diogo Martinho Date: Mon, 23 Sep 2019 05:54:59 +0100 Subject: [PATCH 3/4] Visit Portugal - Stage 1 --- .../CarouselViewChallengePageViewModel.cs | 43 +++++++ .../Views/CarouselViewChallengePage.xaml | 41 ++++++- .../Views/CarouselViewChallengePage.xaml.cs | 112 +++++++++++++++++- 3 files changed, 191 insertions(+), 5 deletions(-) create mode 100644 CarouselViewChallenge/CarouselViewChallenge/ViewModels/CarouselViewChallengePageViewModel.cs diff --git a/CarouselViewChallenge/CarouselViewChallenge/ViewModels/CarouselViewChallengePageViewModel.cs b/CarouselViewChallenge/CarouselViewChallenge/ViewModels/CarouselViewChallengePageViewModel.cs new file mode 100644 index 0000000..343782e --- /dev/null +++ b/CarouselViewChallenge/CarouselViewChallenge/ViewModels/CarouselViewChallengePageViewModel.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.ComponentModel; +using System.Text; +using Xamarin.Forms; + +namespace CarouselViewChallenge.ViewModels +{ + public class LocationOfInterest + { + public string Name { get; set; } + public string ImageURL { get; set; } + public FormattedString Content { get; set; } + }; + + public class CarouselViewChallengePageViewModel : INotifyPropertyChanged + { + public event PropertyChangedEventHandler PropertyChanged; + + private ObservableCollection _loi; + public ObservableCollection LocationsOfInterest + { + get + { + return _loi; + } + set + { + if (_loi != value) + { + _loi = value; + OnPropertyChanged(new PropertyChangedEventArgs("LocationsOfInterest")); + } + } + } + + private void OnPropertyChanged(PropertyChangedEventArgs eventArgs) + { + PropertyChanged?.Invoke(this, eventArgs); + } + } +} diff --git a/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml b/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml index 1a7cc0d..b07d365 100644 --- a/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml +++ b/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml @@ -1,13 +1,46 @@  - - + + + + + +