From cae5216d3004e09055c564c581c99785a14b6596 Mon Sep 17 00:00:00 2001 From: OliE Date: Sat, 15 Aug 2015 15:40:54 +0200 Subject: [PATCH] - fix small bug if fragment not attached to an activity - update version to 1.3 --- android_app/app/src/main/AndroidManifest.xml | 4 ++-- .../java/com/health/openscale/core/OpenScale.java | 5 ++++- .../com/health/openscale/gui/OverviewFragment.java | 13 +++++++------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/android_app/app/src/main/AndroidManifest.xml b/android_app/app/src/main/AndroidManifest.xml index a75a6a71c..5a702ef76 100644 --- a/android_app/app/src/main/AndroidManifest.xml +++ b/android_app/app/src/main/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="6" + android:versionName="1.3" > diff --git a/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java b/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java index 67522ceeb..a756cb09a 100644 --- a/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java +++ b/android_app/app/src/main/java/com/health/openscale/core/OpenScale.java @@ -16,6 +16,7 @@ package com.health.openscale.core; +import android.support.v4.app.Fragment; import android.content.Context; import android.content.SharedPreferences; import android.os.Handler; @@ -433,7 +434,9 @@ public void updateScaleData() for(FragmentUpdateListener fragment : fragmentList) { if (fragment != null) { - fragment.updateOnView(scaleDataList); + if (((Fragment)fragment).isAdded()) { + fragment.updateOnView(scaleDataList); + } } } } diff --git a/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java b/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java index c6538036a..83f415c9f 100644 --- a/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java +++ b/android_app/app/src/main/java/com/health/openscale/gui/OverviewFragment.java @@ -693,7 +693,9 @@ private void updateLastLineChart(ArrayList scaleDataList) { Calendar histDate = Calendar.getInstance(); Calendar lastDate = Calendar.getInstance(); - lastDate.setTime(lastScaleData.date_time); + if (!scaleDataList.isEmpty()) { + lastDate.setTime(scaleDataList.get(0).date_time); + } scaleDataLastDays = new ArrayList(); @@ -713,8 +715,8 @@ private void updateLastLineChart(ArrayList scaleDataList) { long days = 0 - daysBetween(lastDate, histDate); - if (days == 0) { - axisValues.add(new AxisValue(i, DateFormat.getDateInstance(DateFormat.SHORT).format(lastScaleData.date_time).toCharArray())); + if (days == 0 && !scaleDataList.isEmpty()) { + axisValues.add(new AxisValue(i, DateFormat.getDateInstance(DateFormat.SHORT).format(scaleDataList.get(0).date_time).toCharArray())); } else { axisValues.add(new AxisValue(i, String.format("%d " + getResources().getString(R.string.label_days), days).toCharArray())); } @@ -820,11 +822,10 @@ private void updateLastPieChart() { if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_XLARGE || - (getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) { + (getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE) { pieChartData.setCenterText1FontSize(25); pieChartData.setCenterText2FontSize(14); - } else - { + } else { pieChartData.setCenterText1FontSize(20); pieChartData.setCenterText2FontSize(12); pieChartData.setValueLabelTextSize(12);