gpt4 book ai didi

android - 图片从左向右无限滑动

转载 作者:行者123 更新时间:2023-11-29 22:57:03 31 4
gpt4 key购买 nike

我希望有一个像这样的 gif 动画背景:
.
我没有 mac 或 adobe after effects 软件来为此类动画创建 lottie json,我想要对动画有更多的控制,而不是简单地使用 gif。根据我在互联网上阅读的内容,我必须使用 TransitionManagerTranslationAnimation ,但我无法找出正确的代码。

我也很想知道是否有插件,或者有什么方法可以对已经可用的 lottie 文件进行微调,例如背景颜色更改、项目颜色更改、项目删除等,就像我们可以为简单矢量所做的那样图片(使用 Android Studio,或者至少使用一些免费软件)。我找到了 this lottie 文件,它对我来说非常有用,但我无法修改它的颜色

最佳答案

找到了!当我记录一些变量的值时,例如 view.getX()view.getRootView().getX(),我能够弄清楚,我的 View 将其位置为 0,0 。所以在那之后,需要找到屏幕尺寸才能最终制作出这个无限的云移动动画。我不确定此功能在内存或性能方面是否良好,但在我的设备上,它运行流畅。

 private void showCloudMovingContinuouslyAnimation(View v) {
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int runtimeScreenWidth = displayMetrics.widthPixels;
int totalDuration = runtimeScreenWidth*5;

int viewPositionX = 0, viewPositionY = 0;
TranslateAnimation outToRight = new TranslateAnimation(
viewPositionX, (runtimeScreenWidth / 2f) + 50,
viewPositionY, viewPositionY);
outToRight.setDuration(totalDuration / 2);
outToRight.setRepeatCount(Animation.INFINITE);

TranslateAnimation inFromLeft = new TranslateAnimation(
-((runtimeScreenWidth / 2f) + 50), viewPositionX,
viewPositionY, viewPositionY
);
inFromLeft.setDuration(totalDuration / 2);
inFromLeft.setRepeatCount(Animation.INFINITE);


boolean shouldRemainThereAfterAnimationFinishes = true;// useful when animating for single time


AnimationSet animationSet=new AnimationSet(true);
animationSet.setInterpolator(new LinearInterpolator());
animationSet.setRepeatCount(Animation.INFINITE);
animationSet.addAnimation(inFromLeft);
animationSet.addAnimation(outToRight);

v.startAnimation(animationSet); // start animation


}

关于android - 图片从左向右无限滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57316906/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com