summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/java/android/widget/AdapterViewAnimator.java6
-rw-r--r--core/java/android/widget/StackView.java7
2 files changed, 10 insertions, 3 deletions
diff --git a/core/java/android/widget/AdapterViewAnimator.java b/core/java/android/widget/AdapterViewAnimator.java
index bb2e26c3..5ac047c 100644
--- a/core/java/android/widget/AdapterViewAnimator.java
+++ b/core/java/android/widget/AdapterViewAnimator.java
@@ -379,11 +379,13 @@ public abstract class AdapterViewAnimator extends AdapterView<Adapter>
}
void refreshChildren() {
+ if (mAdapter == null) return;
for (int i = mCurrentWindowStart; i <= mCurrentWindowEnd; i++) {
- int index = modulo(i, mMaxNumActiveViews);
+ int index = modulo(i, getWindowSize());
+ int adapterCount = mAdapter.getCount();
// get the fresh child from the adapter
- View updatedChild = mAdapter.getView(i, null, this);
+ View updatedChild = mAdapter.getView(modulo(i, adapterCount), null, this);
if (mViewsMap.containsKey(index)) {
FrameLayout fl = (FrameLayout) mViewsMap.get(index).view;
diff --git a/core/java/android/widget/StackView.java b/core/java/android/widget/StackView.java
index c05da03..0e92eeb 100644
--- a/core/java/android/widget/StackView.java
+++ b/core/java/android/widget/StackView.java
@@ -79,7 +79,12 @@ public class StackView extends AdapterViewAnimator {
* Specifies how far you need to swipe (up or down) before it
* will be consider a completed gesture when you lift your finger
*/
- private static final float SWIPE_THRESHOLD_RATIO = 0.35f;
+ private static final float SWIPE_THRESHOLD_RATIO = 0.2f;
+
+ /**
+ * Specifies the total distance, relative to the size of the stack,
+ * that views will be slid, either up or down
+ */
private static final float SLIDE_UP_RATIO = 0.7f;
/**