android.view.View#setScrollY ( )源码实例Demo

下面列出了android.view.View#setScrollY ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: android_9.0.0_r45   文件: ChangeScroll.java
@Override
public Animator createAnimator(ViewGroup sceneRoot, TransitionValues startValues,
        TransitionValues endValues) {
    if (startValues == null || endValues == null) {
        return null;
    }
    final View view = endValues.view;
    int startX = (Integer) startValues.values.get(PROPNAME_SCROLL_X);
    int endX = (Integer) endValues.values.get(PROPNAME_SCROLL_X);
    int startY = (Integer) startValues.values.get(PROPNAME_SCROLL_Y);
    int endY = (Integer) endValues.values.get(PROPNAME_SCROLL_Y);
    Animator scrollXAnimator = null;
    Animator scrollYAnimator = null;
    if (startX != endX) {
        view.setScrollX(startX);
        scrollXAnimator = ObjectAnimator.ofInt(view, "scrollX", startX, endX);
    }
    if (startY != endY) {
        view.setScrollY(startY);
        scrollYAnimator = ObjectAnimator.ofInt(view, "scrollY", startY, endY);
    }
    return TransitionUtils.mergeAnimators(scrollXAnimator, scrollYAnimator);
}
 
private void scale(AppBarLayout abl, View target, int dy) {
    mTotalDy += -dy;
    mTotalDy = Math.min(mTotalDy, TARGET_HEIGHT);
    mLastScale = Math.max(1f, 1f + mTotalDy / TARGET_HEIGHT);
    ViewCompat.setScaleX(mTargetView, mLastScale);
    ViewCompat.setScaleY(mTargetView, mLastScale);
    mLastBottom = mParentHeight + (int) (mTargetViewHeight / 2 * (mLastScale - 1));
    abl.setBottom(mLastBottom);
    target.setScrollY(0);

    middleLayout.setTop(mLastBottom - mMiddleHeight);
    middleLayout.setBottom(mLastBottom);

    if (onProgressChangeListener != null) {
        float progress = Math.min((mLastScale - 1) / MAX_REFRESH_LIMIT, 1);//计算0~1的进度
        onProgressChangeListener.onProgressChange(progress, false);
    }

}
 
private void scale(AppBarLayout abl, View target, int dy) {
        mTotalDy += -dy;
        mTotalDy = Math.min(mTotalDy, TARGET_HEIGHT);

        Log.e(TAG, "scale: mTotalDy==" + mTotalDy);
        mLastScale = Math.max(1f, 1f + mTotalDy / TARGET_HEIGHT);
        mTargetView.setScaleX(mLastScale);
        mTargetView.setScaleY(mLastScale);

        mLastBottom = mParentHeight + (int) (mTargetViewHeight / 2 * (mLastScale - 1));
//        abl.setBottom(mLastBottom);
        target.setScrollY(0);
//
//        middleLayout.setTop(mLastBottom - mMiddleHeight);
//        middleLayout.setBottom(mLastBottom);

        if (onProgressChangeListener != null) {
            float progress = Math.min((mLastScale - 1) / MAX_REFRESH_LIMIT, 1);//计算0~1的进度
            onProgressChangeListener.onProgressChange(progress, false);
        }

    }
 
源代码4 项目: Transitions-Everywhere   文件: ChangeScroll.java
@Nullable
@Override
public Animator createAnimator(@NonNull ViewGroup sceneRoot, @Nullable TransitionValues startValues,
                               @Nullable TransitionValues endValues) {
    if (startValues == null || endValues == null ||
            Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        return null;
    }
    final View view = endValues.view;
    int startX = (Integer) startValues.values.get(PROPNAME_SCROLL_X);
    int endX = (Integer) endValues.values.get(PROPNAME_SCROLL_X);
    int startY = (Integer) startValues.values.get(PROPNAME_SCROLL_Y);
    int endY = (Integer) endValues.values.get(PROPNAME_SCROLL_Y);
    Animator scrollXAnimator = null;
    Animator scrollYAnimator = null;
    if (startX != endX) {
        view.setScrollX(startX);
        scrollXAnimator = ObjectAnimator.ofInt(view, "scrollX", startX, endX);
    }
    if (startY != endY) {
        view.setScrollY(startY);
        scrollYAnimator = ObjectAnimator.ofInt(view, "scrollY", startY, endY);
    }
    return TransitionUtils.mergeAnimators(scrollXAnimator, scrollYAnimator);
}
 
private void scale(AppBarLayout abl, View target, int dy) {
    mTotalDy += -dy;
    mTotalDy = Math.min(mTotalDy, TARGET_HEIGHT);
    mLastScale = Math.max(1f, 1f + mTotalDy / TARGET_HEIGHT);
    mTargetView.setScaleX(mLastScale);
    mTargetView.setScaleY(mLastScale);
    mLastBottom = mParentHeight + (int) (mTargetViewHeight / 2 * (mLastScale - 1));
    abl.setBottom(mLastBottom);
    target.setScrollY(0);
}
 
private void scale(AppBarLayout abl, View target, int dy) {
    mTotalDy += -dy;
    mTotalDy = Math.min(mTotalDy, TARGET_HEIGHT);
    mLastScale = Math.max(1f, 1f + mTotalDy / TARGET_HEIGHT);
    mTargetView.setScaleX(mLastScale);
    mTargetView.setScaleY(mLastScale);
    mLastBottom = mParentHeight + (int) (mTargetViewHeight / 2 * (mLastScale - 1));
    abl.setBottom(mLastBottom);
    target.setScrollY(0);
}
 
源代码7 项目: MaterialDesignDemo   文件: CustomerBehavior2.java
/**
 * 开始滚动前
 */
@Override
public void onNestedPreScroll(CoordinatorLayout coordinatorLayout, View child, View target, int dx, int dy, int[] consumed) {
    int scrollY = target.getScrollY();
    child.setScrollY(scrollY);
    super.onNestedPreScroll(coordinatorLayout, child, target, dx, dy, consumed);
}
 
@Override
public void set(View object, Integer value) {
    object.setScrollY(value);
}
 
源代码9 项目: imsdk-android   文件: ViewHelper.java
static void setScrollY(View view, int scrollY) {
    view.setScrollY(scrollY);
}
 
源代码10 项目: timecat   文件: ViewHelper.java
static void setScrollY(View view, int scrollY) {
    view.setScrollY(scrollY);
}
 
@Override
public void set(View object, Float value) {
    object.setScrollY(value.intValue());
}
 
源代码12 项目: android-project-wo2b   文件: ViewHelper.java
static void setScrollY(View view, int scrollY) {
    view.setScrollY(scrollY);
}
 
源代码13 项目: MiBandDecompiled   文件: a.java
static void b(View view, int i1)
{
    view.setScrollY(i1);
}
 
源代码14 项目: Mover   文件: ViewHelper.java
static void setScrollY(View view, int scrollY) {
    view.setScrollY(scrollY);
}
 
源代码15 项目: XDroidAnimation   文件: ViewHelper.java
public static void setScrollY(View view, int scrollY) {
	view.setScrollY(scrollY);
}
 
源代码16 项目: KJFrameForAndroid   文件: ViewHelper.java
static void setScrollY(View view, int scrollY) {
    if (SystemTool.getSDKVersion() > 11) {
        view.setScrollY(scrollY);
    }
}
 
源代码17 项目: UltimateAndroid   文件: ViewHelper.java
static void setScrollY(View view, int scrollY) {
    view.setScrollY(scrollY);
}
 
源代码18 项目: Auie   文件: UEViewHelper.java
static void setScrollY(View view, int scrollY) {
    view.setScrollY(scrollY);
}
 
源代码19 项目: CircularReveal   文件: DynamicAnimation.java
@Override
public void setValue(View view, float value) {
  view.setScrollY((int) value);
}
 
源代码20 项目: DevUtils   文件: ViewUtils.java
/**
 * 设置 View 滑动的 Y 轴坐标
 * @param view  {@link View}
 * @param value Y 轴坐标
 * @return {@link View}
 */
public static View setScrollY(final View view, final int value) {
    if (view != null) view.setScrollY(value);
    return view;
}
 
 方法所在类
 同类方法