我在xml中使用ConstraintLayout:
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/LabelTv"
android:layout_width="wrap_content"
android:layout_height="45dp"
android:text="test"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<android.support.constraint.ConstraintLayout/>
我知道是否将0dp用于android:layout_width,表示全宽。 我需要从100dp到0dp播放动画,但是播放此动画时,最后一个值0错误且textView宽度已满。
ValueAnimator va = ValueAnimator.ofInt(100 ,0);
va.setDuration(3000);
va.addUpdateListener(valueAnimator -> {
leftLabelTv.getLayoutParams().width = (int) valueAnimator.getAnimatedValue();
leftLabelTv.requestLayout();
});
va.start();
有人可以帮助我吗?
答案 0 :(得分:1)
您可以尝试使用ConstraintLayout.LayoutParams. matchConstraintMaxWidth:
ValueAnimator va = ValueAnimator.ofInt(100 ,0);
va.setDuration(3000);
va.addUpdateListener(valueAnimator -> {
ConstraintLayout.LayoutParams params = (ConstraintLayout.LayoutParams) leftLabelTv.getLayoutParams()
params.matchConstraintMaxWidth = (int) valueAnimator.getAnimatedValue();
leftLabelTv.requestLayout();
});
va.start();
答案 1 :(得分:-1)
可以使用1的0整数吗? 从100到1?