@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.product_item_top_rl:
startAnimation(v);
break;
}
}
private void startAnimation(final View v) {
int height = v.getHeight();
ValueAnimator va = ValueAnimator.ofInt(0, height);
va.setDuration(1000);
va.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
Log.d(TAG, "animation : " + animation.getAnimatedValue());
v.getLayoutParams().height = (Integer) animation.getAnimatedValue();
v.requestLayout();
}
});
va.start();
}
D/ChooseProductFragment: animation : 150
D/ChooseProductFragment: animation : 150
天蓬老师2017-04-17 15:38:28
问题解决了。是因为我昨天为了用espresso做UI自动化测试,在设置里面关闭了“窗口动画缩放”,“过度动画缩放”,“动画程序时长调整”这三个动画。重新开放这些动画就正常了。
迷茫2017-04-17 15:38:28
你没有指定动画的循环次数和方式,应该加上
//无限循环
va.setRepeatCount(ValueAnimator.INFINITE);
//从头开始动画
va.setRepeatMode(ValueAnimator.RESTART);