android+清除循环动画,android - 如何使用ViewPropertyAnimator生成循环动画?

我想构建一个TextViews动画,在完成后会自动重复。

对于我要设置动画的每个View,我使用以下代码final float oldX = v.getX();

final float newX = v.getX() - (float)totalWidth;

final AnimatorListenerAdapter listener = new AnimatorListenerAdapter() {

@Override

public void onAnimationEnd(Animator animation) {

v.setX(oldX);

animFinished = true;

//This line won't compile

//v.animate().setDuration(animDuration).setInterpolator(newsInterpolator)

// .setListener(listener).x(newX);

}

};

v.animate().setDuration(animDuration).setInterpolator(newsInterpolator)

.setListener(listener).x(newX);

我试图将最后一段代码放入onAnimationEnd中,但是Java不会编译,因为它认为对象监听器未初始化。而且,我认为这种“递归”动画调用不是一个好的解决方案,这是我想到的第一件事。我怀疑是否有一种简单而健全的方法来实现循环属性动画,但是我找不到它,因此我在这里寻求帮助。

提前致谢

最佳答案

好吧,我将再次回答自己。

TranslateAnimation类具有有关重复动画的方法,因此我用它代替了ViewPropertyAnimator。

以下代码似乎有效:long duration = 1000* ((long)totalWidth / newsScrollSpeed);

System.out.println("totalWidth="+totalWidth);

TranslateAnimation anim = new TranslateAnimation(0,-totalWidth,0,0);

anim.setInterpolator(linearInterpolator);

anim.setDuration(duration);

anim.setRepeatCount(TranslateAnimation.INFINITE);

anim.setRepeatMode(TranslateAnimation.RESTART);

for(i=0;i

{

View v = this.getChildAt(i);

if(v.getId() == R.id.yuruyen_yazi)

{

continue;

}

v.startAnimation(anim);

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/294969.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(转)matlab各类数学公式

matlab矩阵应用clear%建立矩阵的两种方式A1 [1 2 3 4 5; 6 7 8 9 10];A2 [ 1 2 3 4 5 6 7 8 9 10 ];%一种是换行用引号,一种是自然写法 clearA [5 4 3 2 1; 6 7 8 9 10;1 2 3 4 5;24 24 24 24 24;25 25 25 25 25];B [5 4 3 2 1; 6 7 8 9 10;…

PS网页设计教程XVI——在PS中创建一个摩登实验室风格的网页设计

作为编码者,美工基础是偏弱的。我们可以参考一些成熟的网页PS教程,提高自身的设计能力。套用一句话,“熟读唐诗三百首,不会作诗也会吟”。 本系列的教程来源于网上的PS教程,都是国外的,全英文的。本人尝试翻…

好评率超高的9个公众号,值得收藏

不管世界变化多快,阅读仍是个不过时的动作。今天就为大家推荐几个优质公众号,从社会热点、读书成长、生活新知,你的碎片化时间,我们包了!一起来看看呀~长按二维码,“识别图中二维码”即可订阅————电商头…

.NET 6新特性试用 | 文件范围的命名空间

前言在前面的《隐式using指令》文章中,我们介绍了global using,可以减少我们代码文件中的“噪音”,使代码更简洁。今天,我们介绍.NET 6中另一个简化代码的方式——文件范围的命名空间。Demo当我们向项目中添加一个类文件时&#x…

php的几种运行模式CLI、CGI、FastCGI、mod_php

1、CLI:就是命令行,例如可以在控制台或者是shell中键入命令: php -f index.php 然后获取输出 2、CGI:以下是不同的说法与理解 公共网关接口”(Common Gateway Interface),HTTP服务器 与你的或其它机器上的程序 进行 “交谈”的一种工具 ,其程…

Android之三大图片缓存原理、特性对比

一. 四大图片缓存基本信息 Universal ImageLoader 是很早开源的图片缓存,在早期被很多应用使用。Picasso 是 Square 开源的项目,且他的主导者是 JakeWharton,所以广为人知。Glide 是 Google 员工的开源项目,被一些 Google App 使用…

android宿舍管理系统源码,基于android操作系统的手机宿舍管理系统使用手册

《基于android操作系统的手机宿舍管理系统使用手册》由会员分享,可在线阅读,更多相关《基于android操作系统的手机宿舍管理系统使用手册(5页珍藏版)》请在人人文库网上搜索。1、基于an droid操作系统的手机宿舍管理系统使用手册 1 系统概述 本系统是在an…

产品需求文档 PRD

第一轮: 1,文档使用方:UI设计师 2、内容: 根据战略层定义出来产品功能范围, 说明此产品的目的,方便UI设计人员更好的理解产品 产品基本流程 详细的设计框架图,推荐用ax…

他读博期间连发3篇Science,28岁任武大教授后再发Nature!

全世界只有3.14 % 的人关注了爆炸吧知识来源:募格课堂整合自武汉大学、武汉晚报、半月谈等有这样一位学者,读博期间以一作身份发表3篇Science,28岁成为武汉大学化学与分子科学学院教授再发2篇Nature,35岁荣获杰青......今年9月,他…

如何限制并发的 异步IO 请求数量?

咨询区 Grief Coder:我的项目中有下面一段代码:// lets say there is a list of 1000 URLs string[] urls { "http://google.com", "http://yahoo.com", ... };// now lets send HTTP requests to each of these URLs in parallel …

Android之自定义 ActionBar 上的菜单(Menu)文字颜色

本文记录了修改 ActionBar 上 Menu 字体颜色的方法。第一种通过自定义主题实现,第二种通过复写onCreateOptionsMenu实现。 自定义Theme 修改MenuItem 文字颜色 自定义 ActionBar 上的菜单文字颜色需要通过 Activity 的 Theme 实现,而非 ActionBar 的 The…

删除远程桌面登陆痕迹

怎么删除本地远程桌面地址记录(连接地址输入框的下拉菜单)。 首先运行regedit,打开注册表,找到 HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default 右边的那些键值就记录了IP或者域名&…

Java Web开发Tomcat中三种部署项目的方法

第一种方法&#xff1a;在tomcat中的conf目录中&#xff0c;在server.xml中的&#xff0c;<host/>节点中添加&#xff1a; <Context path"/hello" docBase"D:\eclipse3.2.2forwebtools\workspace\hello\WebRoot" debug"0" privileged&q…

Android 页面布局xd,Adobe XD强大的布局系列工具 助你事半功倍

数字设计有多种形式-从移动端、桌面网站到显示屏应用程序、智能助手、车载娱乐系统(例如CarPlay和Android Auto)等等。为当今的应用程序打造数字体验意味着需要针对各种屏幕尺寸、布局和交互类型进行设计。作为设计师&#xff0c;您的时间应该花在用户体验上&#xff0c;而不是…

JS中数组Array的用法{转载}

js数组元素的添加和删除一直比较迷惑&#xff0c;今天终于找到详细说明的资料了&#xff0c;先给个我测试的代码^-^var arr new Array();arr[0] "aaa";arr[1] "bbb";arr[2] "ccc";//alert(arr.length);//3arr.pop();//alert(arr.length);//2…

如果觉得午休时间太短怎么办?

1 假装自己戴了口罩&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼2 正义不会迟到博主是男的&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼3 阅读理解有多难&#xff1f;&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼4 下雨天就不要爬树了&…

Android之ActionBar常用设计和使用总结

常用ActionBar总结 我们经常看见项目的顶部有一些文字显示在中间,或者左边、右边,而且还有一个返回的图标,很方便我们返回,接下来我总结下常用的ActionBar 第一步:写常见的ActionBar的布局文件 我这里写了3个actionbar文件 1、actionbar_return.xml …

WPF 实现温度计

WPF开发者QQ群&#xff1a; 340500857 | 微信群 -> 进入公众号主页 加入组织在WPF中没有现成的温度计控件&#xff0c;所以我们自己实现一个。微信群人数太多入群请添加小编微信号&#xff08;yanjinhuawechat&#xff09;或&#xff08;W_Feng_aiQ&#xff09;邀请入群&am…

100-6

2019独角兽企业重金招聘Python工程师标准>>> /**\第6题&#xff08;数组&#xff09;腾讯面试题&#xff1a; 给你10分钟时间&#xff0c;根据上排给出十个数&#xff0c;在其下排填出对应的十个数 要求下排每个数都是先前上排那十个数在下排出现的次数。 上排的十个…

linux系统644、755、777权限详解

在linux系统中644、755、777三种权限是非常重要的一些权限了&#xff0c;下面我来详细的介绍644、755、777三种权限的使用&#xff0c;希望对各位有帮助。常用的linux文件权限&#xff1a; 444 r--r--r-- 600 rw------- 644 rw-r--r-- 666 rw-rw-rw- 700 rwx------ 744 rwxr--r…