From 49fc9d531916c5b880ea3258cd65565c35b69b88 Mon Sep 17 00:00:00 2001 From: syneffort Date: Tue, 31 Jan 2023 14:41:32 +0900 Subject: [PATCH] listview -1 --- .../XamarinStudy/XamarinStudy/App.xaml.cs | 4 +- .../XamarinStudy/XamarinStudy/Models/Food.cs | 13 ++++++ .../Views/SampleListViewPage.xaml | 26 +++++++++++ .../Views/SampleListViewPage.xaml.cs | 46 +++++++++++++++++++ .../XamarinStudy/XamarinStudy.csproj | 3 ++ 5 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 XamarinStudy/XamarinStudy/XamarinStudy/Models/Food.cs create mode 100644 XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml create mode 100644 XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml.cs diff --git a/XamarinStudy/XamarinStudy/XamarinStudy/App.xaml.cs b/XamarinStudy/XamarinStudy/XamarinStudy/App.xaml.cs index 644e5f9..e85d240 100644 --- a/XamarinStudy/XamarinStudy/XamarinStudy/App.xaml.cs +++ b/XamarinStudy/XamarinStudy/XamarinStudy/App.xaml.cs @@ -53,7 +53,9 @@ namespace XamarinStudy //MainPage = new SampleTableViewPage(); - MainPage = new NavigationPage(new SampleTableViewSimpleRegisterPage()); + //MainPage = new NavigationPage(new SampleTableViewSimpleRegisterPage()); + + MainPage = new SampleListViewPage(); } protected override void OnStart() diff --git a/XamarinStudy/XamarinStudy/XamarinStudy/Models/Food.cs b/XamarinStudy/XamarinStudy/XamarinStudy/Models/Food.cs new file mode 100644 index 0000000..a7467b6 --- /dev/null +++ b/XamarinStudy/XamarinStudy/XamarinStudy/Models/Food.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace XamarinStudy.Models +{ + internal class Food + { + public string Name { get; set; } + public int Price { get; set; } + public string Flavor { get; set; } + } +} diff --git a/XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml b/XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml new file mode 100644 index 0000000..6e29f1b --- /dev/null +++ b/XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml.cs b/XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml.cs new file mode 100644 index 0000000..60b41f5 --- /dev/null +++ b/XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml.cs @@ -0,0 +1,46 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +using Xamarin.Forms; +using Xamarin.Forms.Xaml; +using XamarinStudy.Models; + +namespace XamarinStudy.Views +{ + [XamlCompilation(XamlCompilationOptions.Compile)] + public partial class SampleListViewPage : ContentPage + { + private List foods; + + public SampleListViewPage() + { + InitializeComponent(); + InitInstance(); + } + + private void InitInstance() + { + foods = new List(); + foods.Add(new Food() { Name = "냉면", Price = 10000, Flavor = "시원함" }); + foods.Add(new Food() { Name = "모밀", Price = 80000, Flavor = "시원함" }); + foods.Add(new Food() { Name = "국수", Price = 5000, Flavor = "얼큰함" }); + foods.Add(new Food() { Name = "쫄면", Price = 5000, Flavor = "매콤함" }); + foods.Add(new Food() { Name = "떡볶이", Price = 3000, Flavor = "매콤함" }); + mainListView.ItemsSource = foods; + mainListView.Footer = foods; + } + + private void mainListView_ItemSelected(object sender, SelectedItemChangedEventArgs e) + { + if (mainListView.SelectedItem == null) + return; + + Food selected = (Food)mainListView.SelectedItem; + DisplayAlert("맛", $"선택한 음식의 맛은 {selected.Flavor} 입니다.", "확인"); + mainListView.SelectedItem = null; + } + } +} \ No newline at end of file diff --git a/XamarinStudy/XamarinStudy/XamarinStudy/XamarinStudy.csproj b/XamarinStudy/XamarinStudy/XamarinStudy/XamarinStudy.csproj index 0429a10..413e9b4 100644 --- a/XamarinStudy/XamarinStudy/XamarinStudy/XamarinStudy.csproj +++ b/XamarinStudy/XamarinStudy/XamarinStudy/XamarinStudy.csproj @@ -50,6 +50,9 @@ MSBuild:UpdateDesignTimeXaml + + MSBuild:UpdateDesignTimeXaml + MSBuild:UpdateDesignTimeXaml