diff options
author | ByteHamster <info@bytehamster.com> | 2022-08-28 16:52:29 +0200 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2022-08-30 18:45:41 +0200 |
commit | c42ed1d1874142f52385ad1c7ce45bffa17e4981 (patch) | |
tree | 185a38860db52271ca1c7f533cf01fb8687fe1a6 /app/src/main/java/de/danoeh/antennapod/adapter | |
parent | 4c88a1aa69b698284ab0f70e55f059bcd514e654 (diff) | |
download | AntennaPod-c42ed1d1874142f52385ad1c7ce45bffa17e4981.zip |
Use dummy items instead of loading progress bar
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/adapter')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java index 4ebfcff5b..385360790 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java @@ -52,6 +52,7 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription private List<NavDrawerData.DrawerItem> listItems; private NavDrawerData.DrawerItem selectedItem = null; int longPressedPosition = 0; // used to init actionMode + private int dummyViews = 0; public SubscriptionsRecyclerAdapter(MainActivity mainActivity) { super(mainActivity); @@ -95,6 +96,11 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription @Override public void onBindViewHolder(@NonNull SubscriptionViewHolder holder, int position) { + if (position >= listItems.size()) { + holder.selectView.setVisibility(View.GONE); + holder.bindDummy(); + return; + } NavDrawerData.DrawerItem drawerItem = listItems.get(position); boolean isFeed = drawerItem.type == NavDrawerData.DrawerItem.Type.FEED; holder.bind(drawerItem); @@ -157,11 +163,14 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription @Override public int getItemCount() { - return listItems.size(); + return listItems.size() + dummyViews; } @Override public long getItemId(int position) { + if (position >= listItems.size()) { + return RecyclerView.NO_ID; // Dummy views + } return listItems.get(position).id; } @@ -202,6 +211,10 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription return items; } + public void setDummyViews(int dummyViews) { + this.dummyViews = dummyViews; + } + public void setItems(List<NavDrawerData.DrawerItem> listItems) { this.listItems = listItems; } @@ -270,6 +283,17 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription .load(); } } + + public void bindDummy() { + feedTitle.setText("███████"); + feedTitle.setVisibility(View.VISIBLE); + count.setVisibility(View.GONE); + new CoverLoader(mainActivityRef.get()) + .withResource(android.R.color.transparent) + .withPlaceholderView(feedTitle, false) + .withCoverView(imageView) + .load(); + } } public static float convertDpToPixel(Context context, float dp) { |