From 71b84a98547b05326287b2d0656c864699269cad Mon Sep 17 00:00:00 2001 From: Aaron Sun Date: Thu, 3 Dec 2020 16:26:36 -0800 Subject: [PATCH] Limit list text view so it doesn't go over number of items text --- .../listify/adapter/ShoppingListsAdapter.java | 19 +++++++++++++++---- .../ShoppingListsSwipeableAdapter.java | 19 +++++++++++++++---- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsAdapter.java b/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsAdapter.java index 5f49bf5..7002f89 100644 --- a/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsAdapter.java +++ b/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsAdapter.java @@ -63,6 +63,8 @@ public class ShoppingListsAdapter extends BaseAdapter implements Requestor.Recei tvListName = (TextView) convertView.findViewById(R.id.shopping_list_name); + tvListName.setText(curList.getName()); + if(curList.isShared()) { Properties configs = new Properties(); try { @@ -73,8 +75,11 @@ public class ShoppingListsAdapter extends BaseAdapter implements Requestor.Recei requestor = new Requestor(am, configs.getProperty("apiKey")); requestor.getObject(Integer.toString(curList.getListID()), ListShare.class, this); } - else { - tvListName.setText(curList.getName()); + + String listText = tvListName.getText().toString(); + + if(listText.length() > 25) { + tvListName.setText(listText.substring(0, 25) + "..."); } return convertView; @@ -89,10 +94,16 @@ public class ShoppingListsAdapter extends BaseAdapter implements Requestor.Recei @Override public void run() { if(sharee.getShareWithEmail().equals(am.getEmail(requestor))) { - tvListName.setText(curList.getName() + " (shared by me)"); + tvListName.setText(curList.getName() + " (sh. me)"); } else { - tvListName.setText(curList.getName() + " (shared by " + sharee.getShareWithEmail() + ")"); + tvListName.setText(curList.getName() + " (sh. " + sharee.getShareWithEmail() + ")"); + } + + String listText = tvListName.getText().toString(); + + if(listText.length() > 25) { + tvListName.setText(listText.substring(0, 25) + "..."); } } }); diff --git a/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsSwipeableAdapter.java b/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsSwipeableAdapter.java index 8be09ed..5280061 100644 --- a/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsSwipeableAdapter.java +++ b/Listify/app/src/main/java/com/example/listify/adapter/ShoppingListsSwipeableAdapter.java @@ -70,10 +70,16 @@ public class ShoppingListsSwipeableAdapter extends BaseAdapter implements Reques @Override public void run() { if(sharee.getShareWithEmail().equals(am.getEmail(requestor))) { - holder.listName.setText(curList.getName() + " (shared by me)"); + holder.listName.setText(curList.getName() + " (sh. me)"); } else { - holder.listName.setText(curList.getName() + " (shared by " + sharee.getShareWithEmail() + ")"); + holder.listName.setText(curList.getName() + " (sh. " + sharee.getShareWithEmail() + ")"); + } + + String listText = holder.listName.getText().toString(); + + if(listText.length() > 25) { + holder.listName.setText(listText.substring(0, 25) + "..."); } } }); @@ -114,11 +120,16 @@ public class ShoppingListsSwipeableAdapter extends BaseAdapter implements Reques // Bind the view to the unique list ID binderHelper.bind(holder.swipeLayout, Integer.toString(curList.getListID())); + holder.listName.setText(curList.getName()); + if(curList.isShared()) { requestor.getObject(Integer.toString(curList.getListID()), ListShare.class, this); } - else { - holder.listName.setText(curList.getName()); + + String listText = holder.listName.getText().toString(); + + if(listText.length() > 25) { + holder.listName.setText(listText.substring(0, 25) + "..."); } if (curList.getEntries() != null) {