[Android] Visible Gone 자동 애니메이션

2023. 1. 1. 10:41정리

반응형
android:animateLayoutChanges="true"

root View에 위 옵션을 주고, 

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <androidx.coordinatorlayout.widget.CoordinatorLayout
        android:id="@+id/root"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:animateLayoutChanges="true"
        android:background="@color/backgroud">
    lateinit var containerView: ViewGroup
    ...
    private fun addItem() {
        val newView: View = ...

        containerView.addView(newView, 0)
    }

root에 addView를 하면 자동으로 애니메이션이 추가된다.

 

try {
    LayoutTransition layoutTransition = new LayoutTransition();
    layoutTransition.disableTransitionType(LayoutTransition.CHANGING);
    rootView.setLayoutTransition(layoutTransition);
} catch (Exception e) {
    e.printStackTrace();
}

rootView에 LayoutTransition.CHANGING 옵션을 주면 rootView 안의 View의 GONE, VISIBLE 시에도 자동으로 추가 제거 애니메이션이 적용된다.

 

반응형