summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorKatie McCormick <kmccormick@google.com>2013-02-06 18:15:13 -0800
committerKatie McCormick <kmccormick@google.com>2013-02-07 16:42:26 -0800
commit87cfad7d742c8fae1ac268168e2ada286d330ef1 (patch)
tree258c0209b9f70c8b7a4c552f77b1d040dfb64ebc /core
parent00f490844d89b146e5490204a5a483834950c489 (diff)
downloadframeworks_base-87cfad7d742c8fae1ac268168e2ada286d330ef1.zip
frameworks_base-87cfad7d742c8fae1ac268168e2ada286d330ef1.tar.gz
frameworks_base-87cfad7d742c8fae1ac268168e2ada286d330ef1.tar.bz2
Doc change: Scroller Javadoc Bug # 7966653
Change-Id: I4365946f890a76fcfa78ca9d69f2a8e0848095a9
Diffstat (limited to 'core')
-rw-r--r--core/java/android/widget/Scroller.java44
1 files changed, 36 insertions, 8 deletions
diff --git a/core/java/android/widget/Scroller.java b/core/java/android/widget/Scroller.java
index 3a28e75..3bfd39d 100644
--- a/core/java/android/widget/Scroller.java
+++ b/core/java/android/widget/Scroller.java
@@ -26,11 +26,39 @@ import android.view.animation.Interpolator;
/**
- * This class encapsulates scrolling. The duration of the scroll
- * can be passed in the constructor and specifies the maximum time that
- * the scrolling animation should take. Past this time, the scrolling is
- * automatically moved to its final stage and computeScrollOffset()
- * will always return false to indicate that scrolling is over.
+ * <p>This class encapsulates scrolling. You can use scrollers ({@link Scroller}
+ * or {@link OverScroller}) to collect the data you need to produce a scrolling
+ * animation&mdash;for example, in response to a fling gesture. Scrollers track
+ * scroll offsets for you over time, but they don't automatically apply those
+ * positions to your view. It's your responsibility to get and apply new
+ * coordinates at a rate that will make the scrolling animation look smooth.</p>
+ *
+ * <p>Here is a simple example:</p>
+ *
+ * <pre> private Scroller mScroller = new Scroller(context);
+ * ...
+ * public void zoomIn() {
+ * // Revert any animation currently in progress
+ * mScroller.forceFinished(true);
+ * // Start scrolling by providing a starting point and
+ * // the distance to travel
+ * mScroller.startScroll(0, 0, 100, 0);
+ * // Invalidate to request a redraw
+ * invalidate();
+ * }</pre>
+ *
+ * <p>To track the changing positions of the x/y coordinates, use
+ * {@link #computeScrollOffset}. The method returns a boolean to indicate
+ * whether the scroller is finished. If it isn't, it means that a fling or
+ * programmatic pan operation is still in progress. You can use this method to
+ * find the current offsets of the x and y coordinates, for example:</p>
+ *
+ * <pre>if (mScroller.computeScrollOffset()) {
+ * // Get current x and y positions
+ * int currX = mScroller.getCurrX();
+ * int currY = mScroller.getCurrY();
+ * ...
+ * }</pre>
*/
public class Scroller {
private int mMode;
@@ -272,8 +300,7 @@ public class Scroller {
/**
* Call this when you want to know the new location. If it returns true,
- * the animation is not yet finished. loc will be altered to provide the
- * new location.
+ * the animation is not yet finished.
*/
public boolean computeScrollOffset() {
if (mFinished) {
@@ -355,7 +382,8 @@ public class Scroller {
}
/**
- * Start scrolling by providing a starting point and the distance to travel.
+ * Start scrolling by providing a starting point, the distance to travel,
+ * and the duration of the scroll.
*
* @param startX Starting horizontal scroll offset in pixels. Positive
* numbers will scroll the content to the left.