我正在以下列方式更改图像视图的左边距:
ViewGroup.MarginLayoutParams layoutParams = (MarginLayoutParams) image.getLayoutParams ();
layoutParams.leftMargin = VALUE;
image.setLayoutParams ( layoutParams );
我希望边距的变化适用于动画。有什么线索吗?
我尝试了什么:
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat ( image , "x" , VALUE);
objectAnimator.start();
这非常有效,因为图像通过动画移动到指定的 X 值,但是 layoutParams.leftMargin的值保持不变!所以我不能使用这个方法,因为如果我在使用值为 100 的 objectAnimator 后尝试将 layoutParams.leftMargin 的值更改为100,则应用的值不正确(应用 200 而不是 100,如果objectAnimator保持不变的效果即使我以以下方式设置左边距:
layoutParams.leftMargin = 100;