From 96229e0b76bd7ccc2e9e627d56ef26dc7ba4ee3f Mon Sep 17 00:00:00 2001 From: NorbiPeti Date: Wed, 8 Feb 2017 22:21:11 +0100 Subject: [PATCH] Started table layout and web request --- Orarend/API.cs | 29 +++++-- OrarendAndroidApp/MainActivity.cs | 21 ++++- OrarendAndroidApp/OrarendAndroidApp.csproj | 3 + .../Resources/Resource.Designer.cs | 6 ++ .../Resources/layout/MainLayout.axml | 76 +++++++++++++++++++ 5 files changed, 126 insertions(+), 9 deletions(-) create mode 100644 OrarendAndroidApp/Resources/layout/MainLayout.axml diff --git a/Orarend/API.cs b/Orarend/API.cs index 453863a..24de4c1 100644 --- a/Orarend/API.cs +++ b/Orarend/API.cs @@ -1,15 +1,32 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; +using System.Collections.Generic; +using System.IO; +using System.Net; +using System.Threading.Tasks; +using System.Xml; +using System.Xml.Linq; namespace Orarend { public static class API { - public static IEnumerable<Óra> Órák(string csoportok) + /// + /// Visszatér az adott nap óráival. + /// + /// Az osztály azonosítója, ld. + /// A csoportok, amiknek az óráit kérjük, szóközökkel elválasztva + /// A nap egy betűs formában + /// + public static IEnumerable<Óra> Órák(string osztályid, string csoportok, string nap) { - return null; + return new Óra[] { new Óra { Azonosító = "test", Név = "Test", Tanár = new Tanár { Név = "A B" }, Terem = "222" }, new Óra { Azonosító = "asd", Név = "Asd", Tanár = new Tanár { Név = "B A" }, Terem = "216" } }; + } + + public static async Task> Osztályok() + { //TODO: Tárolja el az adatokat, és csak külön hívásra frissítse; csak a frissítés legyen async, ezek nem + var req = WebRequest.CreateHttp("http://deri.enaplo.net/ajax/orarend/orarendoszt.php"); + var resp = await req.GetResponseAsync(); + var doc = XDocument.Parse(new StreamReader(resp.GetResponseStream()).ReadToEnd()); + return new string[] { doc.Element(XName.Get("select")).Value }; } } } diff --git a/OrarendAndroidApp/MainActivity.cs b/OrarendAndroidApp/MainActivity.cs index b90c776..38a1dcd 100644 --- a/OrarendAndroidApp/MainActivity.cs +++ b/OrarendAndroidApp/MainActivity.cs @@ -7,6 +7,8 @@ using Android.Widget; using Android.OS; using Android.Support.V4.View; using Orarend; +using System.Linq; +using Android.Graphics; namespace OrarendAndroidApp { @@ -16,9 +18,22 @@ namespace OrarendAndroidApp protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); - SetContentView(Resource.Layout.Main); - ViewPager viewPager = FindViewById(Resource.Id.viewpager); - API.Órák(""); + SetContentView(Resource.Layout.MainLayout); + //ViewPager viewPager = FindViewById(Resource.Id.viewpager); + var table = FindViewById(Resource.Id.tableLayout1); + Action addCell = (text, color, tr1) => + { + TextView textview = new TextView(this); + textview.SetText(text, TextView.BufferType.Normal); + textview.SetTextColor(color); + tr1.AddView(textview); + }; + foreach (var óra in API.Órák("")) + { + TableRow tr1 = new TableRow(this); + addCell(óra.Név + "\n" + óra.Tanár.Név + "\n" + óra.Terem, Color.White, tr1); + table.AddView(tr1); + } } } } diff --git a/OrarendAndroidApp/OrarendAndroidApp.csproj b/OrarendAndroidApp/OrarendAndroidApp.csproj index d26902f..1abbcb2 100644 --- a/OrarendAndroidApp/OrarendAndroidApp.csproj +++ b/OrarendAndroidApp/OrarendAndroidApp.csproj @@ -63,6 +63,9 @@ + + AndroidResource + diff --git a/OrarendAndroidApp/Resources/Resource.Designer.cs b/OrarendAndroidApp/Resources/Resource.Designer.cs index c396848..3b9c502 100644 --- a/OrarendAndroidApp/Resources/Resource.Designer.cs +++ b/OrarendAndroidApp/Resources/Resource.Designer.cs @@ -60,6 +60,9 @@ namespace OrarendAndroidApp public partial class Id { + // aapt resource value: 0x7f050001 + public const int tableLayout1 = 2131034113; + // aapt resource value: 0x7f050000 public const int viewpager = 2131034112; @@ -79,6 +82,9 @@ namespace OrarendAndroidApp // aapt resource value: 0x7f030000 public const int Main = 2130903040; + // aapt resource value: 0x7f030001 + public const int MainLayout = 2130903041; + static Layout() { global::Android.Runtime.ResourceIdManager.UpdateIdValues(); diff --git a/OrarendAndroidApp/Resources/layout/MainLayout.axml b/OrarendAndroidApp/Resources/layout/MainLayout.axml new file mode 100644 index 0000000..5103e26 --- /dev/null +++ b/OrarendAndroidApp/Resources/layout/MainLayout.axml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file