繁体   English   中英

具有ViewPager偏移量的Android动画

[英]Android animation with ViewPager offset

比方说,我有查看X上ViewPager的顶部。 X的宽度和高度为50dp。 现在,当我将ViewPager从第一页滚动到第二页时,我希望X相对于当前滚动位置降低其宽度和高度,并在ViewPager完全滚动到第二个位置后以最小20dp的高度和宽度结束页。

我正在尝试使用onPageScrolledpositionOffset值,但似乎无法弄清楚它是如何工作的并将其转换为像素。

ViewPager.addOnPageListener(new ViewPager.OnPageChangeListener() {

      @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

            System.out.println(positionOffset);     

            }

});

谢谢,感谢您的帮助。

对于每页( position ), positionOffset将其值从0更改为1。 根据您的示例,您可以将视图的比例从100%更改为40%。 使用positionOffset作为x,该函数将为y = -0.6x + 1。

viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {

    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
        if(position == 0) {
            yourView.setScaleX((float)(-0.6 * positionOffset) + 1);
            yourView.setScaleY((float)(-0.6 * positionOffset) + 1);
        } else {
            yourView.setScaleX(0.4f);
            yourView.setScaleY(0.4f);
        }
    }

    [...]

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM