summaryrefslogtreecommitdiff
path: root/library/main/src
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2017-04-19 18:21:40 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2017-04-19 18:21:40 +0000
commit1a8259d4fb0a29ca334ac8728ef9ac9e4241f056 (patch)
treeb087b140fe63a01d3a46da94d5538a82c372bf24 /library/main/src
parentba64d20153a47c0f5e83208b4f3cd239fe500949 (diff)
parentbb9086d69daf97f22eb096ecb6055b8360958ac7 (diff)
downloadsetupwizard-1a8259d4fb0a29ca334ac8728ef9ac9e4241f056.tar.gz
Merge "Customize Item callbacks and support existing background in RecycleItemAdapter"
Diffstat (limited to 'library/main/src')
-rw-r--r--library/main/src/com/android/setupwizardlib/items/Item.java13
1 files changed, 11 insertions, 2 deletions
diff --git a/library/main/src/com/android/setupwizardlib/items/Item.java b/library/main/src/com/android/setupwizardlib/items/Item.java
index 59ab1a1..fc8823e 100644
--- a/library/main/src/com/android/setupwizardlib/items/Item.java
+++ b/library/main/src/com/android/setupwizardlib/items/Item.java
@@ -155,8 +155,7 @@ public class Item extends AbstractItem {
// Set the image drawable to null before setting the state and level to avoid affecting
// any recycled drawable in the ImageView
iconView.setImageDrawable(null);
- iconView.setImageState(icon.getState(), false /* merge */);
- iconView.setImageLevel(icon.getLevel());
+ onMergeIconStateAndLevels(iconView, icon);
iconView.setImageDrawable(icon);
iconContainer.setVisibility(View.VISIBLE);
} else {
@@ -165,4 +164,14 @@ public class Item extends AbstractItem {
view.setId(getViewId());
}
+
+ /**
+ * Copies state and level information from {@link #getIcon()} to the currently bound view's
+ * ImageView. Subclasses can override this method to change whats being copied from the icon
+ * to the ImageView.
+ */
+ protected void onMergeIconStateAndLevels(ImageView iconView, Drawable icon) {
+ iconView.setImageState(icon.getState(), false /* merge */);
+ iconView.setImageLevel(icon.getLevel());
+ }
}