当前位置: 首页 > news >正文

自己做的表白网站广州seo服务公司

自己做的表白网站,广州seo服务公司,钢格板保定网站建设,免费制作简历模板网站原理:使用ValueAnimator属性动画类实现,它通过值的改变手动设置对象的属性值来实现动画效果。直接贴代码: public static void doNumberAnim(TextView tvPrice, float startNumber, float endNumber) {ValueAnimator animator ValueAnimato…

原理:使用ValueAnimator属性动画类实现,它通过值的改变手动设置对象的属性值来实现动画效果。直接贴代码:

public static void doNumberAnim(TextView tvPrice, float startNumber, float endNumber) {ValueAnimator animator = ValueAnimator.ofFloat(startNumber, endNumber);animator.setDuration(800);animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {tvPrice.setText(animation.getAnimatedValue().toString());}});animator.start();
}

对于官网解释如下:

This class provides a simple timing engine for running animations which calculate animated values and set them on target objects.

There is a single timing pulse that all animations use. It runs in a custom handler to ensure that property changes happen on the UI thread.

By default, ValueAnimator uses non-linear time interpolation, via the AccelerateDecelerateInterpolator class, which accelerates into and decelerates out of an animation. This behavior can be changed by calling setInterpolator.

Animators can be created from either code or resource files. Here is an example of a ValueAnimator resource file:

ValueAnimator also supports the use of a combination of PropertyValuesHolder and Keyframe resource tags to create a multi-step animation. Note that you can specify explicit fractional values (from 0 to 1) for each keyframe to determine when, in the overall duration, the animation should arrive at that value. Alternatively, you can leave the fractions off and the keyframes will be equally distributed within the total duration:


此类提供了一个简单的计时引擎,用于运行动画,这些动画计算动画值并将其设置在目标对象上。

所有动画都使用单个定时脉冲。它在自定义处理程序中运行,以确保属性更改发生在 UI 线程上。

默认情况下,ValueAnimator 通过类使用非线性时间插值,该插值加速到动画中,从动画中减速。可以通过调用 来更改此行为。AccelerateDecelerateInterpolatorsetInterpolator

可以从代码或资源文件创建动画器。下面是 ValueAnimator 资源文件的示例:

ValueAnimator 还支持使用 and 资源标记的组合来创建多步骤动画。请注意,您可以为每个关键帧指定显式小数值(从 0 到 1),以确定动画在整个持续时间内何时应达到该值。或者,您可以关闭分数,关键帧将在总持续时间内均匀分布:PropertyValuesHolderKeyframe

总结

常数

static final int
INFINITE = -1

此值与属性一起使用以无限期地重复动画。setRepeatCount

static final int
RESTART = 1

当动画到达末尾并且为 INFINITE 或正值时,动画将从开头重新启动。repeatCount

static final int
REVERSE = 2

当动画到达末尾并且为无限值或正值时,动画在每次迭代时都会反转方向。repeatCount

公共构造函数

ValueAnimator()

创建一个新的 ValueAnimator 对象。

公共方法

static boolean
areAnimatorsEnabled()

返回系统范围的动画器当前是否已启用。

void
cancel()

取消动画。

@NonNull ValueAnimator
clone()
void
end()

结束动画。

float
getAnimatedFraction()

返回当前动画分数,这是动画上最近帧更新中使用的经过/插值分数。

@NonNull Object
getAnimatedValue()

当只有一个属性被动画化时,由此计算的最新值。ValueAnimator

@Nullable Object
getAnimatedValue(@NonNull String propertyName)

由此计算的最新值为 。ValueAnimatorpropertyName

long
getCurrentPlayTime()

获取动画在时间中的当前位置,该位置等于当前时间减去动画开始的时间。

long
getDuration()

获取动画的长度。

static long
getFrameDelay()

动画的每一帧之间的时间量(以毫秒为单位)。

@Nullable Interpolator
getInterpolator()

返回此值动画器使用的计时插值器。

@NonNull String
getNameForTrace()

返回此动画器的名称以进行调试。

int
getRepeatCount()

定义动画应重复的次数。

int
@ValueAnimator.RepeatMode
getRepeatMode()

定义此动画到达末尾时应执行的操作。

long
getStartDelay()

调用延迟启动动画的时间量(以毫秒为单位)。start

long
getTotalDuration()

获取动画的总持续时间,包括动画序列、开始延迟和重复。

@NonNull PropertyValuesHolder[]
getValues()

返回此值动画器在其间进行动画处理的值。

boolean
isRunning()

返回此动画器当前是否正在运行(已启动并已超过任何初始启动延迟周期且尚未结束)。

boolean
isStarted()

返回此动画器是否已启动和尚未结束。

static @NonNull ValueAnimator
ofArgb(@NonNull int[] values)

构造并返回一个在颜色值之间进行动画处理的 ValueAnimator。

static @NonNull ValueAnimator
ofFloat(@NonNull float[] values)

构造并返回一个在浮点值之间进行动画处理的 ValueAnimator。

static @NonNull ValueAnimator
ofInt(@NonNull int[] values)

构造并返回一个在 int 值之间进行动画处理的 ValueAnimator。

static @NonNull ValueAnimator
ofObject(@NonNull TypeEvaluator evaluator, @NonNull Object[] values)

构造并返回一个在对象值之间进行动画处理的 ValueAnimator。

static @NonNull ValueAnimator
ofPropertyValuesHolder(@NonNull PropertyValuesHolder[] values)

构造并返回一个 ValueAnimator,该动画器在 PropertyValuesHolder 对象中指定的值之间进行动画处理。

void
pause()

暂停正在运行的动画。

void
resume()

恢复暂停的动画,使动画师在暂停时从中断的位置继续。

void
reverse()

反向播放 ValueAnimator。

void
setCurrentFraction(float fraction)

将动画的位置设置为指定的分数。

void
setCurrentPlayTime(long playTime)

将动画的位置设置为指定的时间点。

@NonNull ValueAnimator
setDuration(long duration)

设置动画的长度。

void
setEvaluator(@NonNull TypeEvaluator value)

计算此动画的动画值时要使用的类型赋值器。

void
setFloatValues(@NonNull float[] values)

设置将在浮点值之间进行动画处理。

static void
setFrameDelay(long frameDelay)

动画的每一帧之间的时间量(以毫秒为单位)。

void
setIntValues(@NonNull int[] values)

设置将在两者之间进行动画处理的 int 值。

void
setInterpolator(@Nullable Interpolator value)

用于计算此动画的经过分数的插值器。

void
setNameForTrace(@NonNull String animationName)

设置要在系统跟踪中显示的动画的名称。

void
setObjectValues(@NonNull Object[] values)

设置要对此动画进行动画处理的值。

void
setRepeatCount(int value)

设置动画应重复的次数。

void
setRepeatMode(@ValueAnimator.RepeatMode int value)

定义此动画到达末尾时应执行的操作。

void
setStartDelay(long startDelay)

调用延迟启动动画的时间量(以毫秒为单位)。start

void
setValues(@NonNull PropertyValuesHolder[] values)

设置每个属性之间的值。

void
start()

启动此动画。

@NonNull String
toString()

继承的常量

来自androidx.core.animation.Animator

继承的方法

来自androidx.core.animation.Animator

公共方法

getAnimatedValue

public @Nullable Object getAnimatedValue(@NonNull String propertyName)

由此计算的最新值为 。此只读属性的主要用途是在计算值后立即从调用 期间检索值,该值在每个动画帧期间调用。ValueAnimatorpropertyNameValueAnimatoronAnimationUpdate

返回
@Nullable Object

animatedValue 最近由 .ValueAnimator

getDuration

获取动画的长度。默认持续时间为 300 毫秒。

返回
long

动画的长度(以毫秒为单位)。

对象

public static @NonNull ValueAnimator ofObject(@NonNull TypeEvaluator evaluator, @NonNull Object[] values)

构造并返回一个在对象值之间进行动画处理的 ValueAnimator。单个值意味着该值是要动画到的值。但是,这在 ValueAnimator 对象中通常没有用处,因为对象无法确定动画的起始值(与 ObjectAnimator 不同,ObjectAnimator 可以从要设置动画的目标对象和属性派生该值)。因此,通常应有两个或多个值。

注意:Object 值存储为对原始对象的引用,这意味着调用此方法后对这些对象的更改将影响动画器上的值。如果在调用此方法后对象将在外部发生突变,则调用方应改为传递这些对象的副本。

由于 ValueAnimator 不知道如何在任意对象之间进行动画处理,因此此工厂方法还采用 TypeEvaluator 对象,ValueAnimator 将使用该对象来执行该插值。

参数
@NonNull TypeEvaluator evaluator

将在每个动画帧上调用的类型计算器,以在对象值之间提供必要的插值以派生动画值。

@NonNull Object[] values

动画将随时间推移在其之间设置动画效果的一组值。

返回
@NonNull ValueAnimator

一个 ValueAnimator 对象,该对象设置为在给定值之间进行动画处理。

设置电流分数

public void setCurrentFraction(float fraction)

将动画的位置设置为指定的分数。此分数应介于 0 和动画的总分数之间,包括任何重复。也就是说,分数 0 会将动画定位在重复一次的反转动画器的开头,值 1 定位在末尾,值 2 定位在末尾。如果动画尚未启动,则在设置为此分数后,它将不会向前前进;它只需将分数设置为此值,并根据该分数执行任何适当的操作。如果动画已经在运行,则 setCurrentFraction() 会将当前分数设置为此值,并从该点继续播放。 由于更改分数,不会调用事件;这些事件仅在动画运行时处理。androidx.core.animation.Animator.AnimatorListener

参数
float fraction

动画前进或倒带到的分数。动画师的最大分数范围之外的值将被钳制到正确的范围。

setEvaluator

public void setEvaluator(@NonNull TypeEvaluator value)

计算此动画的动画值时要使用的类型赋值器。系统将根据构造函数中的类型和自动分配浮点数或整数赋值器。但是,如果这些值不是这些基元类型之一,或者需要不同的计算(例如表示颜色的 int 值所必需的),则需要分配自定义计算器。例如,在对颜色值运行动画时,应使用 来获取正确的 RGB 颜色插值。startValueendValueArgbEvaluator

如果此值动画器之间只有一组值进行动画处理,则此赋值器将用于该集。如果有几组值正在进行动画处理,例如在 ValueAnimator 上设置了 PropertyValuesHolder 对象,则赋值器仅分配给第一个 PropertyValuesHolder 对象。

参数
@NonNull TypeEvaluator value

此动画要使用的赋值器

设置对象值

public void setObjectValues(@NonNull Object[] values)

设置要对此动画进行动画处理的值。单个值意味着该值是要动画到的值。但是,这在 ValueAnimator 对象中通常没有用处,因为对象无法确定动画的起始值(与 ObjectAnimator 不同,ObjectAnimator 可以从要设置动画的目标对象和属性派生该值)。因此,通常应有两个或多个值。

注意:Object 值存储为对原始对象的引用,这意味着调用此方法后对这些对象的更改将影响动画器上的值。如果在调用此方法后对象将在外部发生突变,则调用方应改为传递这些对象的副本。

如果已经通过多个 PropertyValuesHolder 对象为此 ValueAnimator 定义了多组值,则此方法将为其中第一个对象设置值。

在 ValueAnimator 上应该设置一个 TypeEvaluator,它知道如何在这些值对象之间进行插值。ValueAnimator 只知道如何在其他 setValues() 方法中指定的基元类型之间进行插值。

参数
@NonNull Object[] values

要在其间进行动画处理的值集。

http://www.yayakq.cn/news/149354/

相关文章:

  • 百度云域名没有备案怎么做网站网站备案信息代码
  • 如何做纯文本网站免费网络加速器破解版
  • 莘县建设局网站沧州瑞智网站建设
  • 广州响应式网站制作六安网页
  • 上线了做网站多少钱前端开发网站开发
  • 深圳福田大型商城网站建设柯基
  • cms进行网站开发西安网站建设企业
  • 广州番禺网站建设公司html5网站有哪些
  • 网站建设费用明细建站套餐和定制网站的区别
  • 成都网站优化公司重庆网络营销渠道
  • c 做网站怎么居中wordpress拖拽式建站主题
  • 建设一个招聘网站做网站 需要买云服务器吗
  • 网页版传奇网站开放平台作用发挥明显
  • 杭州高瑞网站建设wap网站登陆系统
  • 网站寄生虫怎么做一般网站的优缺点
  • 网站建设广告有哪些平台wordpress文章找不到
  • 购买网站域名 空间百度百科词条创建入口
  • 男女在浴室里做羞羞事网站智能科技网站模板下载地址
  • 简述常用的网站开发软件怎么修改wordpress模版
  • 浙江省建设厅门户网站wordpress登录注册小工具
  • 网站开发托管协议网页游戏传奇盛世2
  • 宿迁建设企业网站做服装最好的网站
  • 手机大型网站做设计有哪些免费网站
  • 企业服务网站制作wordpress记录访问量
  • 免费的h5制作网站模板wordpress产品展示放大镜
  • 网站群管理商城app定制开发
  • 西南交通建设集团网站京津冀协同发展建议
  • 做网站app要注册哪类商标网站后台左侧导航折叠效果打不开
  • 怎么做网站注册名密码合肥装修公司排行榜
  • 网站建设人员配置网站开发的现状