Lottie Animation ширина не устанавливается в Android MatchParent - PullRequest
0 голосов
/ 04 июня 2019

enter image description here

Привет, все, что я использую в этой анимации Лотти https://lottiefiles.com/117-progress-bar., когда я говорю «матч с родителем», это то, что я вижу. Мне нужно увеличить ширину. Как мне этого добиться?

  <LinearLayout
        android:layout_weight="0.5"
        android:layout_height="0dp"
        android:layout_width="match_parent"
        android:background="@android:color/holo_red_dark"
        android:orientation="vertical">


    <com.airbnb.lottie.LottieAnimationView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:lottie_autoPlay="true"
        app:lottie_loop="true"
        app:lottie_fileName="progress_bar.json"
        android:visibility="visible"/>

    <TextView
        android:id="@+id/transmitting"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="10dp"
        android:background="@android:color/white"
        android:fontFamily="@font/open_sans_semibold"
        android:text="Transmitting..."
        android:textAlignment="center"
        android:textSize="15dp"
        android:visibility="invisible"
        />

    </LinearLayout>

1 Ответ

1 голос
/ 05 июня 2019

Иногда анимации Лотти, которые создаются, не заполняют весь видовой экран.Вы должны вручную указать layout_width или layout_height в dp или масштабировать чертеж в соответствии с вашими потребностями.Вы не можете изменить размеры в предоставленном файле .json, так как все значения свойств относятся к исходному размеру.

Вы можете попробовать приведенный ниже код для масштабирования Drawable внутри LottieAnimationView

LottieAnimationView animationView = findViewById(R.id.your_view_id);
LottieDrawable drawable = new LottieDrawable();
LottieComposition.Factory.fromAssetFileName(this, "progress_bar.json",(composition -> 
{
    drawable.setComposition(composition);
    drawable.playAnimation();
    drawable.setScale(4);
    animationView.setImageDrawable(drawable);

}));

Если вы добавляете анимацию динамически с помощью приведенного выше кода, не забудьте удалить тег app:lottie_fileName из вашего LottieAnimationView.

...