首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

fillAfter和fillEnabled在Android视图动画XML中不起作用

在Android视图动画XML中,fillAfter和fillEnabled是两个属性,用于控制动画结束后视图的行为。

  1. fillAfter属性:该属性用于指定动画结束后,视图是否保持动画结束时的状态。如果设置为true,则视图将保持动画结束时的状态;如果设置为false,则视图将返回到动画开始前的状态。默认值为false。
  2. fillEnabled属性:该属性用于指定是否启用fillAfter属性。如果设置为true,则fillAfter属性生效;如果设置为false,则fillAfter属性不生效。默认值为false。

然而,有时候在使用Android视图动画XML时,fillAfter和fillEnabled属性可能不起作用的原因可能是以下几点:

  1. 使用了属性动画:fillAfter和fillEnabled属性只适用于补间动画(Tween Animation),而不适用于属性动画(Property Animation)。如果你使用的是属性动画,那么fillAfter和fillEnabled属性将不起作用。
  2. 使用了ViewPropertyAnimator:ViewPropertyAnimator是一种简化的属性动画方式,它提供了一些简便的方法来执行动画操作。然而,ViewPropertyAnimator并不支持fillAfter和fillEnabled属性。如果你使用了ViewPropertyAnimator来执行动画操作,那么fillAfter和fillEnabled属性将不起作用。
  3. 使用了其他属性或方法覆盖了fillAfter和fillEnabled属性:有时候,可能会在代码中使用其他属性或方法来控制动画结束后视图的行为,这些属性或方法可能会覆盖fillAfter和fillEnabled属性的效果。在这种情况下,需要检查代码中是否有其他与动画结束后视图行为相关的属性或方法。

综上所述,如果fillAfter和fillEnabled属性在Android视图动画XML中不起作用,可以先检查是否使用了属性动画或ViewPropertyAnimator,如果是的话,需要考虑其他方式来控制动画结束后视图的行为。另外,还需要检查代码中是否有其他属性或方法覆盖了fillAfter和fillEnabled属性的效果。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

这次彻底搞懂Android补间动画

、中间动画变化过程由系统补全来确定一个动画 结束的视图样式:平移、缩放、旋转 & 透明度样式 即补间动画动画效果就是:平移、缩放、旋转 & 透明度动画 如何使用: 补间动画的使用方式分为两种:XML...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...alpha 组合动画:   我们刚刚已经了解了单个的动画,但是日常开发,很少会出现只是用一个动画就能够达到的需求,我们主要灵活运用上述四种基础部件动画,达到炫酷的效果。 xml实现: <?

1.2K20

android缩放动画中心缩放_安卓动画缩放调到多少比较好

动画插入器,该功能在xml里设置貌似无效,需代码中加 fromXScale:从自身x轴长度多少倍开始缩放,如:fromXScale= 0.5表示从自身X轴长度0.5倍开始缩放 toXScale:缩放到自身...xml布局文件,我们需要用Java代码让他工作起来,如下; /** * 缩放变大动画 * * @param context * @param view 目标view...= null) view.startAnimation(animation); } 我单独封装在一个动画工具类,哪里需要就哪里调用。..." android:fillEnabled="true" android:fromXScale="1.0" android:fromYScale="0"...= null) view.startAnimation(set); } 效果如下: 备注:由于我的图片是导出视频再用PS转换成的gif,故效率上有所损失,实际动画效果速度比图片的快

2.3K20
  • Android 动画:手把手教你使用 补间动画 (视图动画)

    :fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true” // 是否应用fillBefore值,对fillAfter

    2.7K20

    Android:这是一份全面 & 详细的补间动画使用教程

    :fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true...,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled= “true” // 是否应用fillBefore值,对fillAfter

    1.9K20

    Android 动画总结(3) - 补间动画

    这种动画不改变 View 的位置,比如 TranslateAnimation,虽然看着 View 移走了,但是点击事件仍然原位置触发,过去遇到这种情况,需要计算动画结束后 View 屏幕上的精确位置...> ,如果 startOffset 了,后一个动画是在前一个基础上改变的,比如上面最后两个 ,第一步从 0.9 放大到 1.1,第二步想从 1.1 回到 1 的,但 fromXScale...1.1 的这个大小来说,从它的 1 变成 1/1.1 = 0.9090909 如果是 ,fillAfter 这种属性要设置 标签里才有效 val anim = AnimationUtils.loadAnimation..., don't animate the wallpaper with it. android:duration 动画持续时间(毫秒) android:fillAfter true 时,动画结束停留在最后...:repeatCount 动画重复次数 android:repeatMode 动画重复模式,有 restart reverse 两种 android:startOffset 延迟执行动画 android

    55610

    窗口动画缩放,过渡动画缩放,Animator时长缩放_关闭动画缩放好不好

    :fillAfter="true" //动画结束后,保持结束时的状态 android:fillBefore="true" //用于确定动画开始时,View的动画属性值; android:fillEnabled...fillEnabled:用来控制fillBefore属性是否有效,若为true,则fillBefore生效;若为false则不管设置fillBefore为true还是false,都不起作用。...XML,我们已经完成了所需要的全部属性设定,所以代码我们只要传入我们创建的XML文件来实例化对象之后,就可以启动动画啦。...//让执行动画的view对象调用启动方法 view.startAnimation(scaleAnimation); } } 其实除了上文代码XML文件设置的属性之外,ScaleAnimation还提供了一些别的可以功能属性...Animation动画并不实际改变view的坐标值,只是视图上实现动画,而Animator则会改变view的坐标值,这点我深有体会,实现图片放大需求时,我有试过监听Animation动画实现前后view

    2.7K20

    自定义View(一)-动画- XML生成View动画

    ---- 动画介绍 Android动画中,总共有两种类型的动画View Animation(视图动画)Property Animator(属性动画) 区别: 1....所在包名不同: View Animationandroid.view.animation。而Property Animation APIandroid.animation。 3....动画类的命名不同: View Animation动画类取名都叫XXXXAnimation,而在Property Animator动画类的取名则叫XXXXAnimator 那么两者的使用场景具体的区别呢...:fillBefore   如果设置为true,控件动画结束时,还原到开始动画前的状态 android:fillEnabled 与android:fillBefore 效果相同,都是动画结束时,...android:toAlpha 动画结束时的透明度,也是从0.0 --1.0 ,0.0表示全透明,1.0表示完全不透明 了解了共有属性独有属性后我们具体用代码来实践一下,看下具体的效果:

    85110

    Android动画详解

    前言 Android动画分为视图动画(View Animation)属性动画(Property Animation),视图动画分为补间动画(Tween Animation)逐帧动画(Frame Animation...1.视图动画 视图动画主要有5类型: scale:动画缩放 alpha:渐变透明度 rotate:动画旋转 translate:位置变换 set:上述四种集合 1.1 使用方式    视图动画我们可以建...xml文件Java代码两种方式来实现动画效果,scaleAnimationscale标签对应,属性都一致,就像TextView标签,可以xml中使用text:设置文字,也可以java中使用textview.settext...首先我们res目录下新建anim目录,anim下新建xml文件,比如为scale.xml,那么我们可以java文件通过下列代码,来使用这个动画 Animation animation = AnimationUtils.loadAnimation...属性名 意义 android:duration 动画持续的时间,单位是毫秒 android:fillAfter 动画是否保持结束时的状态,布尔值 android:fillBefore 动画结束时是否还原到初始状态

    76260

    自定义View(二)-动画- 代码生成View动画

    前言 上篇我们介绍了视图动画,说的确切点应该是视图动画中的补间动画(Tween Animation),关于逐帧动画(Frame Animation)用法更简单,这里先不做介绍后期再自定义View的使用会用到...android:fillAfter 对应代码: setFillAfter(boolean) 如果设置为true,控件动画结束时,将保持动画最后时的状态...,比如弹跳效果等 可以看到,XML设置的属性基本都可以用代码来控制。...正好对应之前我们XML中学到的5动画的属性,如下: XML 实体类 scale ScaleAnimation alpha AlphaAnimation rotate RotateAnimation...---- 实战 View动画讲到这基本上也就差不多了,那么我们用个小例子实际运用一下。 下面这个例子就是百篮应用Activi ty进入与退出动画。我们就可以用我们学到的View动画来去实现。

    55210

    Android补间动画之ScaleAnimation、AlphaAnimation、RotateAnimation、TranslateAnimation、AnimationSet详解「建议收藏」

    android:fillBefore setFillBefore(boolean) 如果设置为true,控件动画结束时,还原到开始动画前的状态 android:fillEnabled...Animation.RELATIVE_TO_PARENT; 这三个构造函数难度不大,就不再细讲,举个例子说明: 第一篇Scale的例子的XML代码为: [html] view plain...第一篇文章,我们构造的XML代码为: [java] view plain copy <?xml version=“1.0” encoding=“utf-8”?...只有最后一个构造函数可以指定百分数相对父控件的百分数。 下面以第一篇XML代码为例,用JAVA代码构造同样的效果: XML代码: [html] view plain copy <?...增加动画的函数为:(更多函数,请参看SDK文档) public void addAnimation (Animation a) 下面第一篇XML代码为例写出能构造同样效果的JAVA代码: XML代码为

    2.3K20

    Android动画基础 | 概述、逐帧动画视图动画

    ), 可以理解为,它事先加载好了一系列的图片; 普通的Drawable一样,它可以被设为视图对象的背景; 最简单的定义逐帧动画的方法, drawable文件夹下新建一个xml文件; xml...透明度动画(AlphaAnimation) 建立:可以xml资源文件建立,也可以java文件建立; 每一个标签对应一个AlphaAnimation对象; 控制视图实现从一个透明度到另一个透明度的变换...缩放动画(ScaleAnimation) 建立:可以xml资源文件建立,也可以java文件建立; 每一个标签对应一个ScaleAnimation对象; 控制视图实现在X轴、Y轴上从一个缩放程度到另一个缩放程度的变换...旋转动画(RotateAnimation) 建立:可以xml资源文件建立,也可以java文件建立; 每一个标签对应一个RotateAnimation对象; 控制视图实现在X轴...; 3.6 集合动画 建立:可以xml资源文件建立,也可以java文件建立; 每一个标签对应一个AnimationSet对象; 控制视图实现复合动画; 下面做一个demo:

    4K21

    Android样式的开发:View Animation篇

    除了drawable动画Android框架还提供了另外两种动画体系:视图动画(View Animation)属性动画(Property Animation)。...视图动画比较简单,只能应用于各种View,可以做一些位置、大小、旋转透明度的简单转变。...属性动画则是android 3.0引入的动画体系,提供了更多特性灵活性,也可以应用于任何对象,而不只是View。本篇先讲视图动画。...设为true,则动画只在窗口运行,壁纸背景保持不变 android:fillAfter 设置为true时,动画执行完后,View会停留在动画的最后一帧;默认为false;如果是动画集,需标签设置该属性才有效...比如只能应用于View,也只能做渐变、缩放、旋转移动,以及这些动画的组合。下一篇再详细讲解属性动画,属性动画可以轻而易举的做到许多视图动画做不到的事,比如说图片的翻转。

    1K20

    Android 属性动画:这是一份全面 & 详细的核心使用类ValueAnimator学习指南

    3.3.2 XML 代码设置 具备重用性,即将通用的动画写到XML里,可在各个界面中去重用它 步骤1:路径 res/animator的文件夹里创建相应的动画 .xml文件 此处设置为res/animator...“true” // 动画播放完后,视图是否会停留在动画开始的状态,默认为true android:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于...fillBefore值,默认为false android:fillEnabled= “true” // 是否应用fillBefore值,对fillAfter值无影响,默认为true android...); // 其他使用类似ValueAnimator.ofInt(int values),此处不作过多描述 4.3.3 XML 代码设置 步骤1:路径 res/animator的文件夹里创建相应的动画...:valueFrom="0" android:valueTo="100" android:valueType="intType"/> 步骤3:Java代码启动动画 Animator

    1.1K50

    Android属性动画:核心使用类ValueAnimator学习指南

    操作值的方式 分为 XML 设置 / Java 代码设置,具体如下: /* * 设置方式1:xml */ // 步骤1:路径 res/animator的文件夹里创建相应的动画 .xml文件 - set_animation.xml...:startOffset ="1000" // 动画延迟开始时间(ms) android:fillBefore = “true” // 动画播放完后,视图是否会停留在动画开始的状态,默认为true...android:fillAfter = “false” // 动画播放完后,视图是否会停留在动画结束的状态,优先于fillBefore值,默认为false android:fillEnabled...= “true” // 是否应用fillBefore值,对fillAfter值无影响,默认为true android:repeatMode= “restart” // 选择重复播放动画模式,restart...> 步骤5:主代码文件设置显示视图 MainActivity.java public class MainActivity extends AppCompatActivity { @Override

    2K41

    Android开发基础动画技巧的应用 原

    由于Android开发的固有特点,其进行动画编程时也支持使用代码xml配置文件两种方式。本篇博客,将主要向大家介绍这3种创建Android动画方式的使用方法与可以做到的效果。...(boolean fillAfter) //设置动画执行时Z轴上的位置 /* 可以设置为如下3常量 public static final int ZORDER_BOTTOM = -1; /...首先在Android Studio的res目录创建一个动画文件目录,将其类型选择为anim,如下图所示: ? 创建的目录创建一个新的xml文件,在其中编写动画代码如下: 代码,使用如下代码来加载xml配置的动画: //加载动画文件 Animation animation...Android Studio的drawable文件夹添加一个animation文件,xml代码如下: <?xml version="1.0" encoding="utf-8"?

    77720
    领券