gpt4 book ai didi

java - 在动画监听器中区分 2 个动画

转载 作者:行者123 更新时间:2023-12-01 09:20:21 24 4
gpt4 key购买 nike

我想知道如何区分动画监听器中具有相同持续时间的两个动画。我知道我可以声明:

animation1.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {

}

@Override
public void onAnimationEnd(Animation animation) {

}

@Override
public void onAnimationRepeat(Animation animation) {

}
});

然后我可以对动画 2 执行相同的操作,从而产生单独的动画监听器,但是我想要这样的东西(不完全是因为动画没有 ​​ID)请注意 onAnimationEnd:

public class example implements Animation.AnimationListener{
@Override
public void onBackPressed() {
if(detallesvis) {
lldetalles.startAnimation(disappear);
}
else{
finish();
}
}

@Override
public void onAnimationStart(Animation animation) {

}

@Override
public void onAnimationEnd(Animation animation) {
if (animation.getId()==animation1.getId())/* please note that animation.getId() function doesn't exist, it is just an example */ {
dostuff();
}
if (animation.getId()==animation2.getId()){
}
}

@Override
public void onAnimationRepeat(Animation animation) {

}

}

我通过为每个动画设置不同的持续时间并比较animation.getduration()解决了这个问题...但是我想要一种更干净的方法(如果可能的话)。

最佳答案

等于动画对象

@Override
public void onAnimationEnd(Animation animation) {
if (animation == animation1) {
dostuff();
}

if (animation == animation2) {
}
}

关于java - 在动画监听器中区分 2 个动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40205658/

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