本文整理匯總了Java中com.handmark.pulltorefresh.library.PullToRefreshBase.State.OVERSCROLLING屬性的典型用法代碼示例。如果您正苦於以下問題:Java State.OVERSCROLLING屬性的具體用法?Java State.OVERSCROLLING怎麽用?Java State.OVERSCROLLING使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類com.handmark.pulltorefresh.library.PullToRefreshBase.State
的用法示例。
在下文中一共展示了State.OVERSCROLLING屬性的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: overScrollBy
public static void overScrollBy(PullToRefreshBase<?> view, int deltaX, int scrollX, int
deltaY, int scrollY, int scrollRange, int fuzzyThreshold, float scaleFactor, boolean
isTouchEvent) {
int deltaValue;
int scrollValue;
int currentScrollValue;
switch (view.getPullToRefreshScrollDirection()) {
case HORIZONTAL:
deltaValue = deltaX;
scrollValue = scrollX;
currentScrollValue = view.getScrollX();
break;
default:
deltaValue = deltaY;
scrollValue = scrollY;
currentScrollValue = view.getScrollY();
break;
}
if (view.isPullToRefreshOverScrollEnabled() && !view.isRefreshing()) {
Mode mode = view.getMode();
if (mode.permitsPullToRefresh() && !isTouchEvent && deltaValue != 0) {
int newScrollValue = deltaValue + scrollValue;
if (newScrollValue < 0 - fuzzyThreshold) {
if (mode.showHeaderLoadingLayout()) {
if (currentScrollValue == 0) {
view.setState(State.OVERSCROLLING, new boolean[0]);
}
view.setHeaderScroll((int) (((float) (currentScrollValue +
newScrollValue)) * scaleFactor));
}
} else if (newScrollValue > scrollRange + fuzzyThreshold) {
if (mode.showFooterLoadingLayout()) {
if (currentScrollValue == 0) {
view.setState(State.OVERSCROLLING, new boolean[0]);
}
view.setHeaderScroll((int) (((float) ((currentScrollValue +
newScrollValue) - scrollRange)) * scaleFactor));
}
} else if (Math.abs(newScrollValue) <= fuzzyThreshold || Math.abs(newScrollValue
- scrollRange) <= fuzzyThreshold) {
view.setState(State.RESET, new boolean[0]);
}
} else if (isTouchEvent && State.OVERSCROLLING == view.getState()) {
view.setState(State.RESET, new boolean[0]);
}
}
}