summaryrefslogtreecommitdiffstats
path: root/core/java/android/widget/ImageButton.java
diff options
context:
space:
mode:
authorScott Main <smain@google.com>2009-05-18 16:05:52 -0700
committerScott Main <smain@google.com>2009-05-18 16:05:52 -0700
commit84971ae0109bdfae79f3c9d15edf400fa5129f3d (patch)
tree6a52ab2be8e7af677df7411b59350c0863eca2b1 /core/java/android/widget/ImageButton.java
parent6063a9c9ee91a647680653a4520dfcad83985592 (diff)
downloadframeworks_base-84971ae0109bdfae79f3c9d15edf400fa5129f3d.zip
frameworks_base-84971ae0109bdfae79f3c9d15edf400fa5129f3d.tar.gz
frameworks_base-84971ae0109bdfae79f3c9d15edf400fa5129f3d.tar.bz2
Revise the ImageButton class description to include information
about XML <selector> drawables, for managing button state.
Diffstat (limited to 'core/java/android/widget/ImageButton.java')
-rw-r--r--core/java/android/widget/ImageButton.java32
1 files changed, 29 insertions, 3 deletions
diff --git a/core/java/android/widget/ImageButton.java b/core/java/android/widget/ImageButton.java
index 4c1cbf6..d417e40 100644
--- a/core/java/android/widget/ImageButton.java
+++ b/core/java/android/widget/ImageButton.java
@@ -27,9 +27,35 @@ import java.util.Map;
/**
* <p>
- * An image button displays an image that can be pressed, or clicked, by the
- * user.
- * </p>
+ * Displays a button with an image (instead of text) that can be pressed
+ * or clicked by the user. By default, an ImageButton looks like a regular
+ * {@link android.widget.Button}, with the standard button background
+ * that changes color during different button states. The image on the surface
+ * of the button is defined either by the {@code android:src} attribute in the
+ * {@code &lt;ImageButton&gt;} XML element or by the
+ * {@link #setImageResource(int)} method.</p>
+ *
+ * <p>To remove the standard button background image, define your own
+ * background image or set the background color to be transparent.</p>
+ * <p>To indicate the different button states (focused, selected, etc.), you can
+ * define a different image for each state. E.g., a blue image by default, an
+ * orange one for when focused, and a yellow one for when pressed. An easy way to
+ * do this is with an XML drawable "selector." For example:</p>
+ * <pre>
+ * &lt;?xml version="1.0" encoding="utf-8"?&gt;
+ * &lt;selector xmlns:android="http://schemas.android.com/apk/res/android"&gt;
+ * &lt;item android:drawable="@drawable/button_normal" /&gt; &lt;!-- default --&gt;
+ * &lt;item android:state_pressed="true"
+ * android:drawable="@drawable/button_pressed" /&gt; &lt;!-- pressed --&gt;
+ * &lt;item android:state_focused="true"
+ * android:drawable="@drawable/button_focused" /&gt; &lt;!-- focused --&gt;
+ * &lt;/selector&gt;</pre>
+ *
+ * <p>Save the XML file in your project {@code res/drawable/} folder and then
+ * reference it as a drawable for the source of your ImageButton (in the
+ * {@code android:src} attribute). Android will automatically change the image
+ * based on the state of the button and the corresponding images
+ * defined in the XML.</p>
*
* <p><strong>XML attributes</strong></p>
* <p>