Android 动画,将图像滑动到另一个图像上

Android 动画,将图像滑动到另一个图像上,android,image,animation,android-viewpager,swipe,Android,Image,Animation,Android Viewpager,Swipe,如何在附加图像上实现一个图像对另一个图像的滑动 在图像中可以看到背景图像是静态的,用户可以滑动另一个图像。这是housing.com应用程序的截图 有人能帮我吗。 注意:尝试了viewpager、jazzyviewpager、Parallex view,但没有成功因此,经过这么多天的search n实施,我完全做到了这一点 实现以下目标的步骤: 1.实现Viewpager。 2.带有转换的用户自定义视图寻呼机。 3.最重要的一点是,实现clipDrawable以在查看页面上的下一页上剪切draw

如何在附加图像上实现一个图像对另一个图像的滑动

在图像中可以看到背景图像是静态的,用户可以滑动另一个图像。这是housing.com应用程序的截图

有人能帮我吗。
注意:尝试了viewpager、jazzyviewpager、Parallex view,但没有成功

因此,经过这么多天的search n实施,我完全做到了这一点

实现以下目标的步骤: 1.实现Viewpager。 2.带有转换的用户自定义视图寻呼机。 3.最重要的一点是,实现clipDrawable以在查看页面上的下一页上剪切drawable

下面是使用clipdrawable的缩放变换类: 公共类ScalePageTransformer实现PageTransformer{ 专用静态最终浮动比例系数=0.95f

    private final ViewPager mViewPager;

    public ScalePageTransformer(ViewPager viewPager) {
        this.mViewPager = viewPager;
    }

    @Override
    public void transformPage(View page, float position){
        View mainLayout = page.findViewById(R.id.bg_rel);
        ClipDrawable clipDrawable = (ClipDrawable) mainLayout.getBackground();
        if (position <= 0){
            // apply zoom effect and offset translation only for pages to
            // the left
            //              final float transformValue = Math.abs(Math.abs(position) - 1) * (1.0f - SCALE_FACTOR) + SCALE_FACTOR;
            int pageWidth = mViewPager.getWidth();
            final float translateValue = position* -pageWidth;
            //              page.setScaleX(transformValue);
            //              page.setScaleY(transformValue);
            if (translateValue > -pageWidth){
                page.setTranslationX(translateValue);
            } else {
                page.setTranslationX(0);
            }
            clipDrawable.setLevel(10000);
        } else {
            //entering view
            int level = (int) ((1 - position) * 10000);
            clipDrawable.setLevel(level);
            mainLayout.setTranslationX(-1 * position * page.getWidth());
        }
    }
}
private final ViewPager mviewpage;
公用比例变压器(查看页面查看页面){
this.mviewpage=viewPager;
}
@凌驾
公共页面(查看页面、浮动位置){
View mainLayout=page.findViewById(R.id.bg_rel);
ClipDrawable ClipDrawable=(ClipDrawable)mainLayout.getBackground();
if(位置-页面宽度){
page.setTranslationX(translateValue);
}否则{
第页设置转换X(0);
}
clipDrawable.setLevel(10000);
}否则{
//进入视野
整数级=(整数)((1-位置)*10000);
clipDrawable.setLevel(级别);
mainLayout.setTranslationX(-1*position*page.getWidth());
}
}
}
rel_bg:我的主布局有可抽拉装置


希望对某人有所帮助。

使用自定义Viewpager(具有堆栈效果的jazzy Viewpager库,并禁用其中的zoomout功能)来实现此目的。

帮助您做什么?我需要滑动与上图完全相同的视图。尝试了很多,但现在还不知道怎么做。我建议你从简单开始。带有两个片段和两个不同背景图像的ViewPager。已尝试使用ViewPager、jazzyviewpager、Parallex view,但未成功您是否介意向我们显示不成功代码?不可能,只能使用ViewPager翻译和剪辑绘制;)