From 4911fd6e557dac0994b960a79f0433459eeac0e1 Mon Sep 17 00:00:00 2001 From: Charles Durham Date: Wed, 27 Dec 2017 17:49:53 -0800 Subject: [PATCH] Add more readable time intervals --- .../habits/show/views/SubtitleCard.java | 26 ++++++++----------- .../src/main/res/values/strings.xml | 17 ++++++++++++ 2 files changed, 28 insertions(+), 15 deletions(-) diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/SubtitleCard.java b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/SubtitleCard.java index 74e6b131d..f95bac52f 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/SubtitleCard.java +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/SubtitleCard.java @@ -87,22 +87,18 @@ public class SubtitleCard extends HabitCard private String toText(Frequency freq) { Resources resources = getResources(); - Integer num = freq.getNumerator(); - Integer den = freq.getDenominator(); - - if (num.equals(den)) return resources.getString(R.string.every_day); - - if (num == 1) - { - if (den == 7) return resources.getString(R.string.every_week); - if (den % 7 == 0) - return resources.getString(R.string.every_x_weeks, den / 7); - return resources.getString(R.string.every_x_days, den); + int num = freq.getNumerator(); + int den = freq.getDenominator(); + + if (den == 1) { + return resources.getQuantityString(R.plurals.times_a_day, num, num); + } else if (den == 7) { + return resources.getQuantityString(R.plurals.times_a_week, num, num); + } else if (den == 28) { + return resources.getQuantityString(R.plurals.times_a_month, num, num); + } else { + return resources.getQuantityString(R.plurals.times_unknown_interval, num, num, den); } - - String times_every = resources.getString(R.string.times_every); - return String.format("%d %s %d %s", num, times_every, den, - resources.getString(R.string.days)); } private void updateReminderText(Reminder reminder) diff --git a/uhabits-android/src/main/res/values/strings.xml b/uhabits-android/src/main/res/values/strings.xml index 5c043b111..507f96bc5 100644 --- a/uhabits-android/src/main/res/values/strings.xml +++ b/uhabits-android/src/main/res/values/strings.xml @@ -222,4 +222,21 @@ Target Yes No + + + Every day + %d times a day + + + Every week + %d times a week + + + Every month + %d times a month + + + Every %2$d days + %1$d times in %2$d days + \ No newline at end of file