From 6537d97d8a9e7abe352684fe91905978ddf39840 Mon Sep 17 00:00:00 2001 From: Philipp Wo Date: Fri, 8 Mar 2019 20:05:22 +0100 Subject: [PATCH] implemented ListView --- .../at/fhj/airkoality/model/Location.java | 2 +- .../airkoality/ui/activity/MainActivity.java | 32 ++++++++++++++----- .../ui/activity/SplashActivity.java | 2 +- .../ui/adapter/LocationListAdapter.java | 31 ++++++++++++++++-- .../app/src/main/res/layout/activity_main.xml | 13 ++++++-- .../main/res/layout/location_list_item.xml | 12 +++++-- .../app/src/main/res/values/strings.xml | 3 ++ README.md | 6 +++- 8 files changed, 83 insertions(+), 18 deletions(-) diff --git a/AirKoality/app/src/main/java/at/fhj/airkoality/model/Location.java b/AirKoality/app/src/main/java/at/fhj/airkoality/model/Location.java index c4840c4..001a0c2 100644 --- a/AirKoality/app/src/main/java/at/fhj/airkoality/model/Location.java +++ b/AirKoality/app/src/main/java/at/fhj/airkoality/model/Location.java @@ -4,7 +4,7 @@ public class Location { private String location; private String city; - private String county: + private String county; public Location(String location, String city, String county) { diff --git a/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/MainActivity.java b/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/MainActivity.java index c01480a..f797d4a 100644 --- a/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/MainActivity.java +++ b/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/MainActivity.java @@ -5,27 +5,43 @@ import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.design.widget.BottomNavigationView; import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; import android.view.MenuItem; import android.widget.TextView; +import java.util.ArrayList; +import java.util.List; + import at.fhj.airkoality.R; +import at.fhj.airkoality.model.Location; +import at.fhj.airkoality.ui.adapter.LocationListAdapter; public class MainActivity extends AppCompatActivity { - private TextView tvTest; - private BottomNavigationView bottomNavigationView; +private RecyclerView locationList; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); - tvTest = findViewById(R.id.tvTest); - bottomNavigationView = findViewById(R.id.bnvMain); - bottomNavigationView.setOnNavigationItemSelectedListener(menuItem -> { - tvTest.setText(menuItem.getTitle()); - return true; - }); + locationList = findViewById(R.id.rvLocationList); + List locations = new ArrayList<>(); + + locations.add(new Location("Daheim", "Graz" , "Österreich")); + locations.add(new Location("Daheim2", "Graz" , "Österreich")); + locations.add(new Location("Daheim3", "Graz" , "Österreich")); + locations.add(new Location("Daheim4", "Graz" , "Österreich")); + locations.add(new Location("Daheim5", "Graz" , "Österreich")); + locations.add(new Location("Daheim6", "Graz" , "Österreich")); + locations.add(new Location("Daheim7", "Graz" , "Österreich")); + locations.add(new Location("Daheim8", "Graz" , "Österreich")); + + LocationListAdapter adapter = new LocationListAdapter(locations); + + locationList.setAdapter(adapter); + locationList.setLayoutManager(new LinearLayoutManager(this)); } diff --git a/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/SplashActivity.java b/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/SplashActivity.java index 4966864..e12b6d6 100644 --- a/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/SplashActivity.java +++ b/AirKoality/app/src/main/java/at/fhj/airkoality/ui/activity/SplashActivity.java @@ -27,7 +27,7 @@ public class SplashActivity extends AppCompatActivity { startActivity(intent); } - },5000); + },3000); diff --git a/AirKoality/app/src/main/java/at/fhj/airkoality/ui/adapter/LocationListAdapter.java b/AirKoality/app/src/main/java/at/fhj/airkoality/ui/adapter/LocationListAdapter.java index 98dc52a..4ce1780 100644 --- a/AirKoality/app/src/main/java/at/fhj/airkoality/ui/adapter/LocationListAdapter.java +++ b/AirKoality/app/src/main/java/at/fhj/airkoality/ui/adapter/LocationListAdapter.java @@ -1,18 +1,24 @@ package at.fhj.airkoality.ui.adapter; +import android.content.Context; import android.support.annotation.NonNull; +import android.support.v7.widget.CardView; import android.support.v7.widget.RecyclerView; +import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.TextView; import java.util.List; +import at.fhj.airkoality.R; import at.fhj.airkoality.model.Location; public class LocationListAdapter extends RecyclerView.Adapter { private List locations; + public LocationListAdapter(List locations){ this.locations = locations; } @@ -21,11 +27,19 @@ public class LocationListAdapter extends RecyclerView.Adapter - + android:layout_height="wrap_content" />--> + + \ No newline at end of file diff --git a/AirKoality/app/src/main/res/layout/location_list_item.xml b/AirKoality/app/src/main/res/layout/location_list_item.xml index 9286625..2b73164 100644 --- a/AirKoality/app/src/main/res/layout/location_list_item.xml +++ b/AirKoality/app/src/main/res/layout/location_list_item.xml @@ -1,8 +1,10 @@ + android:layout_margin="5dp" + android:layout_height="wrap_content"> diff --git a/AirKoality/app/src/main/res/values/strings.xml b/AirKoality/app/src/main/res/values/strings.xml index 9eaca32..cfb1d3c 100644 --- a/AirKoality/app/src/main/res/values/strings.xml +++ b/AirKoality/app/src/main/res/values/strings.xml @@ -3,4 +3,7 @@ Location Map AirKoality + Location: + City: + Country: diff --git a/README.md b/README.md index 60a1ff9..94b1b0e 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ - Hinzufügen der Activities in der AndroidManifest.xml Datei - strings.xml kennengelernt um Texte einer App zentral verwalten zu können -## 08.03.2019 +## 08.03.2019 - Lab 3 Context -> weiß was in der App gerade "abgeht" (Java Objekt) - Activity oder Application @@ -39,4 +39,8 @@ Context -> weiß was in der App gerade "abgeht" (Java Objekt) Best Practise kennengelernt um große Listen darzustellen +Liste bekommt einen Adapter und stellt dann nur Listenelemente dar, die gerade am Bildschrim angezeigt werden. + +Card View Layout ausprobiert + Fragments -> \ No newline at end of file