我应如何将verticalViewPager转换为水平?

问题描述 投票:2回答:1

我应该如何将我的verticalViewPager转换为水平?实际上,我跟着博客“ https://uniqueandrocode.com/vertical-image-slider-in-android-with-viewpager/” ...现在我想如何将我的垂直视图转换为水平。有人可以帮忙吗???] >

MyVerticalViewPager

public class MyVerticalViewPager extends ViewPager {

public MyVerticalViewPager(@NonNull Context context) {
    super(context);
    bounceffect();
}

public MyVerticalViewPager(@NonNull Context context, @Nullable AttributeSet attrs) {
    super(context, attrs);
    bounceffect();
}
public void   bounceffect(){
    setPageTransformer(true,new ViewPagerTransformer());
    setOverScrollMode(OVER_SCROLL_NEVER);
}
private MotionEvent SwipeXY(MotionEvent motionEvent){
    float x=getWidth();
    float y=getHeight();

    float NewX=(motionEvent.getY()/y)*y;
    float NewY=(motionEvent.getX()/x)*x;

    motionEvent.setLocation(NewX,NewY);

    return motionEvent;
}

@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
    boolean intercept=super.onInterceptTouchEvent(SwipeXY(ev));

    SwipeXY(ev);

    return intercept;

}

@Override
public boolean onTouchEvent(MotionEvent ev) {
    return super.onTouchEvent(SwipeXY(ev));

}
public class ViewPagerTransformer implements ViewPager.PageTransformer{

    private static final float M_SCALE=0.65f;
    @Override
    public void transformPage(@NonNull View page, float position) {
        if (position<-1){
            page.setAlpha(0);
        }else if (position<=0){
            page.setAlpha(1);
            page.setTranslationX(page.getWidth()*-position);
            page.setTranslationY(page.getHeight()*position);

            page.setScaleX(1);
            page.setScaleY(1);
        }else if (position<=1){
            page.setAlpha(1-position);
            page.setTranslationX(page.getWidth()*-position);
            page.setTranslationY(0);
            float scal_facter=M_SCALE+(1-M_SCALE)*(1-Math.abs(position));
            page.setScaleX(scal_facter);
            page.setScaleY(scal_facter);
        }else if (position>1){
            page.setAlpha(0);
        }

    }
}}

我认为我们只需要在transform方法下要做的...

我应该如何将verticalViewPager转换为水平?实际上,我跟着博客“ https://uniqueandrocode.com/vertical-image-slider-in-android-with-viewpager/” ...现在我想怎么可以...

android horizontal-scrolling
1个回答
0
投票

您可以使用Horizo​​ntal

© www.soinside.com 2019 - 2024. All rights reserved.