Я пробовал так много попыток, но не смог решить. Я хочу анимировать вид, изменяя постоянно меняющееся вертикальное смещение. Итак, как я могу победить это?
ValueAnimator animator = ValueAnimator.ofInt(100, percent);
animator.setDuration(2000);
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
ViewGroup.LayoutParams params = mViewTop.getLayoutParams();
float v = ((Float.parseFloat(animation.getAnimatedValue().toString())) / 100f) -0.1f;
if (v<0){
v=0;
}
params.verticalBias = v;
mViewTop.setLayoutParams(params);
}
});
animator.start();




Вам нужно изменить, как показано ниже Вы сделали неправильный кастинг, нужно изменить
ValueAnimator animator = ValueAnimator.ofInt(100, percent);
animator.setDuration(2000);
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
ConstraintLayout.LayoutParams params = (ConstraintLayout.LayoutParams) mViewTop.getLayoutParams();
float v = ((Float.parseFloat(animation.getAnimatedValue().toString())) / 100f) -0.1f;
if (v<0){
v=0;
}
params.verticalBias = v;
mViewTop.setLayoutParams(params);
}
});
animator.start();