diff options
author | Danny Baumann <dannybaumann@web.de> | 2016-04-04 08:44:26 +0200 |
---|---|---|
committer | Arne Coucheron <arco68@gmail.com> | 2018-01-26 01:03:43 +0100 |
commit | 646a2f3266c53ec004cd52aa6bddb60faf897932 (patch) | |
tree | 5ef5d0143740bd5e29bf57ee5220d6d8b4136961 | |
parent | 204be5b8f9979864e66b3896d93b0709af3a1017 (diff) | |
download | android_packages_apps_Snap-646a2f3266c53ec004cd52aa6bddb60faf897932.tar.gz android_packages_apps_Snap-646a2f3266c53ec004cd52aa6bddb60faf897932.tar.bz2 android_packages_apps_Snap-646a2f3266c53ec004cd52aa6bddb60faf897932.zip |
Fix view index tracking.
As we have a header and a footer view now, the assumption 'pref list
size == child count' doesn't hold anymore.
Change-Id: I1b4ab16907eea758921ccce64af01d2a73e82459
-rw-r--r-- | src/com/android/camera/ui/ListMenu.java | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/com/android/camera/ui/ListMenu.java b/src/com/android/camera/ui/ListMenu.java index d83114cce..1810b3eff 100644 --- a/src/com/android/camera/ui/ListMenu.java +++ b/src/com/android/camera/ui/ListMenu.java @@ -229,7 +229,7 @@ public class ListMenu extends ListView mEnabled[j] = enable; int offset = getFirstVisiblePosition(); if (offset >= 0) { - int indexInView = j - offset; + int indexInView = j + getHeaderViewsCount() - offset; if (getChildCount() > indexInView && indexInView >= 0) { getChildAt(indexInView).setEnabled(enable); } @@ -274,11 +274,9 @@ public class ListMenu extends ListView public void reloadPreference() { int count = getChildCount(); for (int i = 0; i < count; i++) { - ListPreference pref = mListItem.get(i); - if (pref != null) { - ListMenuItem listMenuItem = - (ListMenuItem) getChildAt(i); - listMenuItem.reloadPreference(); + View view = getChildAt(i); + if (view instanceof ListMenuItem) { + ((ListMenuItem) view).reloadPreference(); } } } |