【发布时间】:2021-02-01 14:29:01
【问题描述】:
我的视图如下所示:
布局如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/content_view"
android:layout_width="wrap_content"
android:layout_height="44dp"
android:paddingStart="12dp"
android:paddingLeft="12dp"
android:paddingEnd="12dp"
android:paddingRight="12dp"
android:paddingBottom="6dp"
android:gravity="bottom"
android:background="@drawable/background"
android:elevation="2dp"
android:clipToPadding="false">
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginStart="4dp"
android:layout_marginLeft="4dp"
android:layout_marginEnd="4dp"
android:layout_marginRight="4dp"
app:srcCompat="@drawable/blue_circle" />
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginStart="4dp"
android:layout_marginLeft="4dp"
android:layout_marginEnd="4dp"
android:layout_marginRight="4dp"
app:srcCompat="@drawable/blue_circle" />
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginStart="4dp"
android:layout_marginLeft="4dp"
android:layout_marginEnd="4dp"
android:layout_marginRight="4dp"
app:srcCompat="@drawable/blue_circle" />
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginStart="4dp"
android:layout_marginLeft="4dp"
android:layout_marginEnd="4dp"
android:layout_marginRight="4dp"
app:srcCompat="@drawable/blue_circle" />
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginStart="4dp"
android:layout_marginLeft="4dp"
android:layout_marginEnd="4dp"
android:layout_marginRight="4dp"
app:srcCompat="@drawable/blue_circle" />
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginStart="4dp"
android:layout_marginLeft="4dp"
android:layout_marginEnd="4dp"
android:layout_marginRight="4dp"
app:srcCompat="@drawable/blue_circle" />
</LinearLayout>
我想要做的是以编程方式将第一个 ImageView 的大小更改为 64x64,同时为更改设置动画并将其他蓝色圆圈推到上方以适应更改。
现在,我只有将宽度/高度更改为 64x64 的代码没有任何动画:
ViewGroup.LayoutParams layoutParams = firstImageView.getLayoutParams();
layoutParams.width = DisplayUtils.convertDpToPixels(getContext(), 64);
layoutParams.height = DisplayUtils.convertDpToPixels(getContext(), 64);
firstImageView.setLayoutParams(layoutParams);
我如何才能平滑地为这些更改设置动画,同时确保所有其他蓝色圆圈移动以适应这些更改?
【问题讨论】:
-
检查这个答案,看起来正是你需要的stackoverflow.com/a/57891481/1372866
-
@ashakirov 就是这样,谢谢!
标签: android android-layout android-animation