From e0a77e9628ea8574c96d5a1f330363021d3c012e Mon Sep 17 00:00:00 2001 From: Branden Archer Date: Sat, 9 Apr 2016 22:11:20 -0400 Subject: [PATCH] display store and note on card summary view Dutch translation provided by PanderMusubi Related issues: https://github.com/brarcher/loyalty-card-locker/issues/23 https://github.com/brarcher/loyalty-card-locker/issues/24 --- .../card_locker/LoyaltyCardCursorAdapter.java | 9 +++++++- .../main/res/layout/loyalty_card_layout.xml | 3 ++- app/src/main/res/values-it/strings.xml | 1 + app/src/main/res/values-nl/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + .../LoyaltyCardCursorAdapterTest.java | 23 ++++++++++++++++++- 6 files changed, 35 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/protect/card_locker/LoyaltyCardCursorAdapter.java b/app/src/main/java/protect/card_locker/LoyaltyCardCursorAdapter.java index 4bec48ca0..85110ac16 100644 --- a/app/src/main/java/protect/card_locker/LoyaltyCardCursorAdapter.java +++ b/app/src/main/java/protect/card_locker/LoyaltyCardCursorAdapter.java @@ -36,7 +36,14 @@ class LoyaltyCardCursorAdapter extends CursorAdapter LoyaltyCard loyaltyCard = LoyaltyCard.toLoyaltyCard(cursor); // Populate fields with extracted properties - storeField.setText(loyaltyCard.store); + String storeAndNote = loyaltyCard.store; + if(loyaltyCard.note.isEmpty() == false) + { + String storeNameAndNoteFormat = view.getResources().getString(R.string.storeNameAndNoteFormat); + storeAndNote = String.format(storeNameAndNoteFormat, loyaltyCard.store, loyaltyCard.note); + } + + storeField.setText(storeAndNote); String cardIdFormat = view.getResources().getString(R.string.cardIdFormat); String cardIdLabel = view.getResources().getString(R.string.cardId); diff --git a/app/src/main/res/layout/loyalty_card_layout.xml b/app/src/main/res/layout/loyalty_card_layout.xml index 6679ab575..1232c0517 100644 --- a/app/src/main/res/layout/loyalty_card_layout.xml +++ b/app/src/main/res/layout/loyalty_card_layout.xml @@ -13,7 +13,8 @@ android:id="@+id/store" android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_weight="1.0"/> + android:layout_weight="1.0" + android:maxLines="1"/> Nessun codice carta inserito %1$s: %2$s + Nota diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index c1e6b3831..659985c44 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -25,4 +25,5 @@ Geen kaart-ID toegevoegd %1$s: %2$s + Notitie diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index cdd9d5482..c1de29597 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -26,4 +26,5 @@ No Card ID entered %1$s: %2$s + %1$s - %2$s \ No newline at end of file diff --git a/app/src/test/java/protect/card_locker/LoyaltyCardCursorAdapterTest.java b/app/src/test/java/protect/card_locker/LoyaltyCardCursorAdapterTest.java index 7dcf7ab1a..8a2ff854f 100644 --- a/app/src/test/java/protect/card_locker/LoyaltyCardCursorAdapterTest.java +++ b/app/src/test/java/protect/card_locker/LoyaltyCardCursorAdapterTest.java @@ -51,7 +51,7 @@ public class LoyaltyCardCursorAdapterTest @Test - public void TestCursorAdapter() + public void TestCursorAdapterEmptyNote() { db.insertLoyaltyCard("store", "", "cardId", BarcodeFormat.UPC_A.toString()); LoyaltyCard card = db.getLoyaltyCard(1); @@ -67,4 +67,25 @@ public class LoyaltyCardCursorAdapterTest checkView(view, card.store, cardIdText); } + + @Test + public void TestCursorAdapterWithNote() + { + db.insertLoyaltyCard("store", "note", "cardId", BarcodeFormat.UPC_A.toString()); + LoyaltyCard card = db.getLoyaltyCard(1); + + Cursor cursor = db.getLoyaltyCardCursor(); + cursor.moveToFirst(); + + View view = createView(cursor); + + final String storeNameAndNoteFormat = activity.getResources().getString(R.string.storeNameAndNoteFormat); + String storeAndNoteText = String.format(storeNameAndNoteFormat, card.store, card.note); + + final String cardIdLabel = activity.getResources().getString(R.string.cardId); + final String cardIdFormat = activity.getResources().getString(R.string.cardIdFormat); + String cardIdText = String.format(cardIdFormat, cardIdLabel, card.cardId); + + checkView(view, storeAndNoteText, cardIdText); + } }