一种平滑的幻灯片图像

Posted

技术标签:

【中文标题】一种平滑的幻灯片图像【英文标题】:Smooth slide image one way 【发布时间】:2016-01-13 23:47:42 【问题描述】:

我有对称的图像,我想从右到左平滑地无限移动它。我尝试使用 TranslateAnimation,但首先我必须正确设置我的图像,这非常困难,主要是因为该图像使用了所有屏幕宽度,我应该设置负边距。还有其他解决方案吗?是否有可能在不移动 ImageView 的情况下移动图像?

【问题讨论】:

您也可以为此使用寻呼机。这是演示codetheory.in/… 是的,“正确”的方法是使用 ViewPager 滑动图像。 【参考方案1】:

最后我自己做了,解决办法是把2个图像放在一起,然后测量屏幕宽度并使用2个TranslateAnimation,一个从屏幕宽度到0,第二个从0到-屏幕宽度:

    TranslateAnimation anim = new TranslateAnimation(0, -screenWidth, 0, 0);
    TranslateAnimation anim2 = new TranslateAnimation(screenWidth, 0, 0, 0);
    anim.setDuration(5000);
    anim.setRepeatCount(Animation.INFINITE);
    anim.setInterpolator(new LinearInterpolator());
    anim2.setDuration(5000);
    anim2.setRepeatCount(Animation.INFINITE);
    anim2.setInterpolator(new LinearInterpolator());
    backgroundOverlayImage.startAnimation(anim);
    backgroundOverlayImage2.startAnimation(anim2);

【讨论】:

【参考方案2】:

我认为这就是你想要做的:

        TranslateAnimation anim = new TranslateAnimation(0, -1000, 0, 0);
        anim.setDuration(1500);
        anim.setFillAfter(true);
        anim.setRepeatCount(0);
        anim.setInterpolator(this, android.Resource.Animation.LinearInterpolator);

编辑: 最后别忘了imageView.startAnimation(anim);

【讨论】:

这个解决方案的问题很少,当图像移动太多时会显示空白,我必须设置负边距才能使其正常工作。【参考方案3】:

虽然您得到了答案,try 这个存储库,这将解决您对幻灯片的所有疑问,还将为您的视图添加自定义动画!

【讨论】:

以上是关于一种平滑的幻灯片图像的主要内容,如果未能解决你的问题,请参考以下文章

将PowerPoint中的内部图像转换为一种格式

Facebook 幻灯片滑出菜单(不使用该库)

如何使用Aspose.Slides提取幻灯片中的图像

实现视频和图像的幻灯片放映

图像幻灯片 Swift ios

创建裁剪的图像幻灯片