как заменить Android изображение, которое можно рисовать (скольжение), на анимацию lott ie? - PullRequest
0 голосов
/ 06 августа 2020

Я хотел заменить эти 3 состояния последовательности изображений Wi-Fi (подключение, подключение, подключение) на 1 lottt ie анимацию, содержащую 3 состояния:

  1. Когда его простаивает он должен отображать неподвижный кадр из wifi lott ie анимации .
  2. Когда кнопка нажата : играет wifi lott ie анимация от кадра x до кадра y.
  3. Когда подключено отображается неподвижный кадр из wifi lott ie анимация .

это код java, который мне нужно изменить:

    protected void loadIcon() {
    if (state == WifiState.IDLE) {
        Glide.with(this).load(R.drawable.ic_connect).into(connectButtonTextView);
        Glide.with(this).load(R.drawable.ic_connect).into(connectButtonTextView);

    } else if (state == WifiState.CONNECTING_WIFI || state == WifiState.CONNECTING_CREDENTIALS) {
        connectButtonTextView.setVisibility(View.VISIBLE);
        Glide.with(this).load(R.drawable.is_connecting).into(connectButtonTextView);
        
    } else if (state == WifiState.CONNECTED) {
        Glide.with(this).load(R.drawable.ic_connected).into(connectButtonTextView);
        Glide.with(this).load(R.drawable.ic_connected).into(connectButtonTextView);
        connectButtonTextView.setVisibility(View.VISIBLE);

    }
}

1 Ответ

1 голос
/ 06 августа 2020

Замените ImageView на этот

<com.airbnb.lottie.LottieAnimationView
     android:id="@+id/animationView"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     app:lottie_url="REPLACE_JSON_URL"
     app:lottie_autoPlay="true"
     app:lottie_loop="true"/>

в xml файле. Замените свой скользящий код активности приведенным ниже кодом и предоставьте файл json в соответствии с вашим условием if.

 animationView.setAnimation("abc.json")
animationView.playAnimation()
animationView.loop(true)
...