gpt4 book ai didi

java - 使用计时器来改变对象的 alpha 几秒钟?

转载 作者:太空宇宙 更新时间:2023-11-04 13:47:09 25 4
gpt4 key购买 nike

我是 Android 新手,所以需要这里最简单的代码示例,我有一个布局,在 OnClick 上,我想将 alpha 设置为 0.50 2 秒,然后再将我导航到另一个页面(有点像按钮阴影效果)。

LinearLayout ChangeThisLayoutAlpha = (LinearLayout) findViewById(R.id.ThisLayout);
ChangeThisLayoutAlpha.setAlpha((float) 0.50);

如何使用计时器或其他设备在 (a) 将其着色 2 秒之间有 2 秒的暂停,然后设备将我导航到另一个页面(并将 alpha 更改回 1.0)?

谢谢!

最佳答案

我想说最简单的方法是使用 ObjectAnimator,就像 tutorial here 中那样。 .

你的代码看起来像这样:

final LinearLayout ChangeThisLayoutAlpha= (LinearLayout) findViewById(R.id.ThisLayout); 
ObjectAnimator animator = ObjectAnimator.ofFloat(ChangeThisLayoutAlpha, "alpha", 1f, 0.5f);
animator.setDuration(2000);
animator.addListener(new AnimatorListenerAdapter() {
public void onAnimationEnd(Animator animation) {
ChangeThisLayoutAlpha.setAlpha(1f);
// Do your transition to the next screen here
}
})
animator.start();

不要忘记查看 ObjectAnimator 文档以获取更多详细信息!

编辑:正如 @njzk2 指出的那样,更简单的方法是使用 ViewPropertyAnimator,因为您可以像他的评论中那样链接调用。如果您支持 API 级别 16 及更高版本,则可以使用 withEndAction(Runnable r) 方法,否则您可以使用 addListener(AnimatorListener Listener),如本文开头的代码 fragment 中所示。

关于java - 使用计时器来改变对象的 alpha 几秒钟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30713420/

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