![](/img/trans.png)
[英]How can I get AnimateLayoutChanges on a MotionLayout working?
[英]How can I tell when the animateLayoutChanges has completed?
我通过将animateLayoutChanges
添加到XML中来利用LinearLayout的自动化(内置)动画。
很好。
但是,当我将Animation.AnimationListener
附加到该LinearLayout时,它永远不会触发。 因此,我对于应该附加哪个侦听器,也许应该附加其侦听器感到困惑,以便确定给定的过渡动画何时完成。
所以..我有这是:
LinearLayout productsList = (LinearLayout)findViewById(R.id.pList);
productsList.setLayoutAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
Log.d(TAG, "animation started");
}
@Override
public void onAnimationEnd(Animation animation) {
Log.d(TAG, "animation ended");
}
@Override
public void onAnimationRepeat(Animation animation) {
Log.d(TAG, "animation repeated");
}
});
动画按预期播放,但我的日志均未写入。
我必须将自己的自定义动画添加到布局中才能正常工作,还是我遗漏了明显的东西?
尝试这个:
productsList.getLayoutTransition().addTransitionListener(new LayoutTransition.TransitionListener() {
@Override
public void startTransition(LayoutTransition transition, ViewGroup container, View view, int transitionType) {
}
@Override
public void endTransition(LayoutTransition transition, ViewGroup container, View view, int transitionType) {
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.