Merge "Fix item cache bug" into nyc-dev am: d3a7d47d00
am: fa3a8ee9bc
* commit 'fa3a8ee9bc7cf22e6725dd7df2926885a75a662d':
Fix item cache bug
Change-Id: I02168d026b5caf81c29b100726d58b200258078c
diff --git a/v7/recyclerview/src/android/support/v7/widget/RecyclerView.java b/v7/recyclerview/src/android/support/v7/widget/RecyclerView.java
index 222656b..e7bff81 100644
--- a/v7/recyclerview/src/android/support/v7/widget/RecyclerView.java
+++ b/v7/recyclerview/src/android/support/v7/widget/RecyclerView.java
@@ -5183,9 +5183,10 @@
if (!holder.hasAnyOfTheFlags(ViewHolder.FLAG_INVALID | ViewHolder.FLAG_REMOVED
| ViewHolder.FLAG_UPDATE)) {
// Retire oldest cached view
- final int cachedViewSize = mCachedViews.size();
- if (cachedViewSize == mViewCacheMax && cachedViewSize > 0) {
+ int cachedViewSize = mCachedViews.size();
+ if (cachedViewSize >= mViewCacheMax && cachedViewSize > 0) {
recycleCachedViewAt(0);
+ cachedViewSize --;
}
if (cachedViewSize < mViewCacheMax) {
mCachedViews.add(holder);