Articles of animation

fillAfter和fillEnabled在Android视图animationXML中不起作用

我很好奇这个行为……我现在正在设置animationXML中的两个值: android:fillEnabled=”true” android:fillAfter=”true” 但是,animation完成后转换不适用…它总是重置。 当我通过代码以编程方式设置它似乎工作: animation.setFillEnabled(true); animation.setFillAfter(true); 所以我只是好奇它应该如何工作,因为我宁愿在XML上设置它。 谢谢!

Android:如何拍出漂亮的心跳animation?

这是我的解决方案 animation/ pulse.xml 然后在activity.java中: ImageView imageView = (ImageView) findViewById(R.id.image); imageView.startAnimation(AnimationUtils.loadAnimation(this, R.anim.pulse)); 我不满意,因为真正的跳动的心脏有更优雅的收缩。 怎么可以改进? 编辑:我认为一个好的效果会模仿心跳。 快速收缩,然后是另一个收缩。 也许最后一局可能在上半场很快,然后在下半场慢慢逆转。 有没有办法让所有这些效果相互触发?

Android Widgets:RemoteViews上的animation?

我没有太多成功将animation应用于RemoteViews视图。 为简单起见,假设我有一个带有ImageView和Button的小部件。 单击按钮时,我想向ImageView添加一个简单的animation(例如旋转)。 由于我无法使用findViewById()获取引用,就像在Activity和RemoteViews中没有animation的setter一样,我不知道该怎么办。 我正在考虑使用新的布局替换窗口小部件的RemoteViews,类似于原始布局,但是这个已经加载了animation。 我可以这样做吗? 是否可以在布局中嵌入animation? 对于WidgetProvider,代码将是这样的: Intent intent = new Intent(context, RotateService.class); PendingIntent pendingIntent = PendingIntent.getService(context, 0, intent, 0); RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.a_widget); views.setOnClickPendingIntent(R.id.a_button, pendingIntent); appWidgetManager.updateAppWidget(appWidgetId, views); 然后在RotateService中: ComponentName myWidget = new ComponentName(this, MyWidget.class); AppWidgetManager manager = AppWidgetManager.getInstance(this); RemoteViews newViews = buildNewRemoteViewsWithAnimation(); manager.updateAppWidget(myWidget, newViews); 还有其他建议吗?

同时启动多个ViewPropertyAnimators

使用Animator类,您可以简单地调用以下内容来同时播放多个animation: AnimatorSet animatorSet = new AnimatorSet(); animatorSet.playTogether(animatorsArray); animatorSet.start(); 但我找不到任何与ViewPropertyAnimator兼容的类似内容。 (仅供参考。我正在尝试为多个listView项目制作animation)

如何在android中设置animation按钮?

我正在制作一个Android应用程序,我有一个按钮,可以通向消息传递的地方。 在使用按钮的活动上,我检查是否有任何未读消息,如果是,我想对按钮做一些事情让用户知道有些东西未读。 我想的是按钮sorta水平振动,每2或3秒钟3次震动。 我知道如何在后台运行一个每隔x毫秒做一次的线程。 但我不知道该做什么是水平摇动3次。 有人能帮忙吗? 我正在考虑使用sin函数,对于animation,我可以使用sin函数的输出来获取上下的值,我可以设置按钮的水平位置……但这似乎太极端了,是有更好的方法吗? 谢谢。

使用TransitionDrawable的交叉淡化不适用于android

我有两张想要褪色的图片。 最初他们都使用imageview。 然后我使用.getDrawable()来获取图像的drawable。 这是我使用的代码 Drawable backgrounds[] = new Drawable[2]; backgrounds[0] = BackgroundImage.getDrawable(); backgrounds[1] = BackgroundImageBlurred.getDrawable(); TransitionDrawable crossfader = new TransitionDrawable(backgrounds); crossfader.startTransition(3000); 它只显示第一个数组元素上的图像,无论如何它都显示,因为两个图像都设置为在XML中可见。 转型没有开始 任何帮助,将不胜感激 :)

1个imageview android上的多个animation

我有2个animation已经在工作,我想在同一时间淡化我的火车+火车。 如果我执行这些行中的一行就可以了。 但是,如果我尝试同时执行它,只有1个可以工作..我真的找不到解决方案。 也许你可以帮忙吗? final ImageView mytrain = (ImageView) findViewById(R.id.train); final Animation traintween = AnimationUtils.loadAnimation(this,R.anim.treinanimation); final Animation trainfade = AnimationUtils.loadAnimation(this,R.anim.trainfade); mytrain.startAnimation(trainfade); mytrain.startAnimation(trainntween); 我希望mytrain执行两个animation.. 感谢您的帮助!

RecyclerView.ViewHolder的部分更新

我正在尝试在RecyclerView随时间更改字段。 每个ViewHolder包含一个CardView和一些内部视图。 我想要制作animation的唯一视图是有时间的视图。 如您所见,没有animation: adapter.notifyDataSetChanged(); 逐个更新项目无济于事,因为整个CardView会闪烁: int len = adapter.getItemCount(); for(int i=0;i<len;i++) { adapter.notifyItemChanged(i); } 有没有办法获取所有ViewHolders的列表,然后更新(animation)每个ViewHolders中的一个TextView ?

ViewPropertyAnimator的translateYBy()和yBy()方法有什么区别?

ViewPropertyAnimators( http://developer.android.com/reference/android/view/ViewPropertyAnimator.html )有两种types的方法可以移动视图: translateX()vs x(),translateY()vs y(),translateXBy()vs xBy(),最后是translateYBy()vs yBy()。 有人能告诉我这些方法之间的区别吗?

使用XML在Android中创建3D翻转animation

我使用这个android教程创建了一个视图的3D翻转但是,我已经以编程方式完成了它,如果可能的话,我想在xml中完成所有操作。 我不是在谈论简单地将视图缩小到中间然后退出,而是实际的3D翻转。 这可能通过xml吗?