From: masensio Date: Wed, 6 May 2015 11:42:43 +0000 (+0200) Subject: Merge branch 'develop' into thumbnailOOM X-Git-Tag: test~6^2^2~6 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/6f3e8fbb85da750a4e01993affa68e5a3d2e1056?hp=7939d3feb5a6363b2f001c388219035313a3cbab Merge branch 'develop' into thumbnailOOM --- diff --git a/src/com/owncloud/android/ui/adapter/FileListListAdapter.java b/src/com/owncloud/android/ui/adapter/FileListListAdapter.java index d4c1c7b2..2c1aa9e9 100644 --- a/src/com/owncloud/android/ui/adapter/FileListListAdapter.java +++ b/src/com/owncloud/android/ui/adapter/FileListListAdapter.java @@ -158,17 +158,22 @@ public class FileListListAdapter extends BaseAdapter implements ListAdapter { viewType = ViewType.GRID_ITEM; } - // Create View - switch (viewType){ - case GRID_IMAGE: - view = inflator.inflate(R.layout.grid_image, null); - break; - case GRID_ITEM: - view = inflator.inflate(R.layout.grid_item, null); - break; - case LIST_ITEM: - view = inflator.inflate(R.layout.list_item, null); - break; + // create view only if differs, otherwise reuse + if (convertView == null || (convertView != null && convertView.getTag() != viewType)) { + switch (viewType) { + case GRID_IMAGE: + view = inflator.inflate(R.layout.grid_image, null); + view.setTag(ViewType.GRID_IMAGE); + break; + case GRID_ITEM: + view = inflator.inflate(R.layout.grid_item, null); + view.setTag(ViewType.GRID_ITEM); + break; + case LIST_ITEM: + view = inflator.inflate(R.layout.list_item, null); + view.setTag(ViewType.LIST_ITEM); + break; + } } view.invalidate();