diff options
| author | Bananeweizen <bananeweizen@gmx.de> | 2014-08-03 07:55:18 +0200 |
|---|---|---|
| committer | Bananeweizen <bananeweizen@gmx.de> | 2014-08-03 07:55:18 +0200 |
| commit | bcb39c310c65e3f2586588330c56ba601c6f0109 (patch) | |
| tree | a458d62a6539903e6c76c2ffbdf29dd8556cf439 /main | |
| parent | a3ce5fca3654eb00f1933a387b7e5f62068831a7 (diff) | |
| download | cgeo-bcb39c310c65e3f2586588330c56ba601c6f0109.zip cgeo-bcb39c310c65e3f2586588330c56ba601c6f0109.tar.gz cgeo-bcb39c310c65e3f2586588330c56ba601c6f0109.tar.bz2 | |
fix #4045: list footer takes space when hidden
Diffstat (limited to 'main')
| -rw-r--r-- | main/src/cgeo/geocaching/CacheListActivity.java | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/main/src/cgeo/geocaching/CacheListActivity.java b/main/src/cgeo/geocaching/CacheListActivity.java index 2f2ce68..9d15e47 100644 --- a/main/src/cgeo/geocaching/CacheListActivity.java +++ b/main/src/cgeo/geocaching/CacheListActivity.java @@ -982,18 +982,28 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA } private void showFooterLoadingCaches() { + // no footer for offline lists + if (listFooter == null) { + return; + } listFooterText.setText(res.getString(R.string.caches_more_caches_loading)); listFooter.setClickable(false); listFooter.setOnClickListener(null); } private void showFooterMoreCaches() { + // no footer in offline lists + if (listFooter == null) { + return; + } + boolean enableMore = type != CacheListType.OFFLINE && cacheList.size() < MAX_LIST_ITEMS; if (enableMore && search != null) { final int count = search.getTotalCountGC(); enableMore = count > 0 && cacheList.size() < count; } + listFooter.setClickable(enableMore); if (enableMore) { listFooterText.setText(res.getString(R.string.caches_more_caches) + " (" + res.getString(R.string.caches_more_caches_currently) + ": " + cacheList.size() + ")"); listFooter.setOnClickListener(new MoreCachesListener()); @@ -1001,10 +1011,10 @@ public class CacheListActivity extends AbstractListActivity implements FilteredA listFooterText.setText(res.getString(CollectionUtils.isEmpty(cacheList) ? R.string.caches_no_cache : R.string.caches_more_caches_no)); listFooter.setOnClickListener(null); } else { - // hide footer completely after online-list was loaded - listFooter.setVisibility(View.GONE); + // hiding footer for offline list is not possible, it must be removed instead + // http://stackoverflow.com/questions/7576099/hiding-footer-in-listview + getListView().removeFooterView(listFooter); } - listFooter.setClickable(enableMore); } private void importGpx() { |
