我正在构建一个自定义的 ViewGroup
,它将一群 child 安排在特定的位置。
在特定的触发条件下(比如按下外部按钮),子项会动画到新的位置。我尝试这样做的方法是启动一个计时器,并在每次计时器更新时计算新位置,然后调用 requestLayout()
。
当我这样做时,动画有点紧张。有没有更有效的方法来做到这一点?
关于自定义重新排列 subview 的正确步骤有什么想法吗?
最佳答案
你应该实现一个 AnimationListener像这样:
Animation anim = AnimationUtils.loadAnimation(R.android.anim.slide_in_left);
anim.setAnimationListener(listener);
view.startAnimation(anim);
private AnimationListener imageViewAnimationListener = new AnimationListener() //
{
@Override
public void onAnimationEnd(Animation arg0) //
{
}
@Override
public void onAnimationRepeat(Animation arg0) //
{
}
@Override
public void onAnimationStart(Animation arg0) //
{
}
};
希望这对您有所帮助!
关于android - 在自定义 ViewGroup 中为 child 设置动画的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7151987/