Как анимировать элемент в макете вкладки при выборе вкладки? [закрытый]
Я хочу поместить анимацию, когда я касаюсь вкладки я хочу анимацию вращения изображения на иконке вкладки. Ниже приведен пример, но он находится в iOS.
2 ответа:
Может сработать следующий подход: создайте
AnimatedVectorDrawable
, как показано здесь https://developer.android.com/reference/android/graphics/drawable/AnimatedVectorDrawable.html и установите его в качестве значка вашей вкладки.Назначьте прослушиватель вашему TabLayout, в
TabLayout.OnTabSelectedListener#onTabSelected(TabLayout.Tab tab)
у вас есть доступ к значку вкладки с помощьюtab.getIcon()
. Запустите анимацию, связанную с вашимAnimatedVectorDrawable
, следующим образом:final Drawable icon = tab.getIcon(); ((Animatable) icon).start();
Я думаю,что это полностью основано на анимации,я предлагаю вам следовать этой демонстрации, это именно то, что вы ищете.
<com.like.LikeButton app:icon_type="star" app:circle_start_color="@color/colorPrimary" app:like_drawable="@drawable/thumb_on" app:unlike_drawable="@drawable/thumb_off" app:dots_primary_color="@color/colorAccent" app:dots_secondary_color="@color/colorPrimary" app:circle_end_color="@color/colorAccent" app:icon_size="25dp" app:liked="true" app:anim_scale_factor="2" app:is_enabled="false" />
Вывод :