diff --git a/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java b/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java index 2057a61..99ef638 100644 --- a/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java +++ b/app/src/main/java/de/apps4ics/mountainnavigation/MainActivity.java @@ -123,6 +123,7 @@ private ListView poiView; private ListView menuView; private ImageView weatherSymbol; + private ImageView weatherWarning; private TextView weatherCity; private TextView weatherMinTemp; private TextView weatherMaxTemp; @@ -198,6 +199,7 @@ menuView = (ListView) findViewById(R.id.menuList); poiView = (ListView) findViewById(R.id.poiList); weatherSymbol = (ImageView) findViewById(R.id.weather_symbol); + weatherWarning = (ImageView) findViewById(R.id.warning_symbol); weatherCity = (TextView) findViewById(R.id.weather_city); weatherMinTemp = (TextView) findViewById(R.id.weather_min_temp); weatherMaxTemp = (TextView) findViewById(R.id.weather_max_temp); @@ -621,6 +623,8 @@ weatherCity.setText(weather.getCity() + ", " + weather.getCountry()); weatherMinTemp.setText(String.format(res.getString(R.string.preferences_n_degree_floating), weather.getMinTemp())); weatherMaxTemp.setText(String.format(res.getString(R.string.preferences_n_degree_floating), weather.getMaxTemp())); + if(weather.isSevereWeather()) weatherWarning.setImageDrawable(res.getDrawable(R.drawable.ic_warning)); + else weatherWarning.setImageDrawable(null); weatherHandler.displayHints(weather); weatherHandler.displaySevereWeather(weather); return null; diff --git a/app/src/main/java/de/apps4ics/mountainnavigation/MyWeather.java b/app/src/main/java/de/apps4ics/mountainnavigation/MyWeather.java index 2f4ed84..522c564 100644 --- a/app/src/main/java/de/apps4ics/mountainnavigation/MyWeather.java +++ b/app/src/main/java/de/apps4ics/mountainnavigation/MyWeather.java @@ -110,6 +110,10 @@ snow = weather.snow.getAmmount() > 0 ? weather.snow.getAmmount() : -1; } + public boolean isSevereWeather() { + return isSevereWeather(getWeatherCode()); + } + public boolean isSevereWeather(int weatherCode){ return Arrays.asList(severeWeatherCodes).contains(weatherCode); } diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 3b4c9d6..dd4948a 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -92,14 +92,27 @@ android:orientation="vertical" android:layout_marginLeft="12dp" android:layout_marginStart="12dp"> - + android:orientation="horizontal"> + + +