1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/pengfeizhou-APNG4Android

Клонировать/Скачать
README.md 4.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 17.03.2025 00:38 0f2291e

Анимация в Android

  • Поддержка APNG & Animated WebP & GIF в Android
  • Эффективный декодер
  • Поддержка использования Drawable и модуля библиотеки Glide
  • Поддержка управления воспроизведением анимации
  • Поддержка статических изображений
  • Низкое потребление памяти

Журнал изменений 2.5.0

  • Перенос на Android X & обновление Glide до версии 4.11.0

Журнал изменений 2.4.2

  • Отключение отладочных логов

Журнал изменений 2.4.1

  • Исправление ошибки воспроизведения плагина Glide для APNG
  • Оптимизация использования плагина Glide

Журнал изменений 2.4.0

  • Добавлен API для получения любого индексированного кадра как Bitmap
  • Поддержка преобразования анимированного WebP в Bitmap с помощью плагина Glide
  • Исправление проблемы недостаточного буфера при использовании ScaleType fitXY

Журнал изменений 2.3.0

  • Исправление ошибки в WebPEncoder

Журнал изменений 2.2.0

  • Обратная совместимость Glide до версии 4.8
  • Перенос на Android Support Library

Журнал изменений 2.1.0

  • Исправление обработки APNG dispose для предыдущего состояния

Журнал изменений 2.0.0

  • Перенос на Android X
  • Обновление Glide до версии 4.11

Журнал изменений 1.3.3

  • Исправление проблем малой вероятности
    • Предотвращение возможности рендера переиспользуемого Bitmap
    • Исправление исключения NullPointerException при создании нового потока
    • Предотвращение ситуации, когда размер буфера меньше целевого Bitmap## Журнал изменений 1.3.1
  • Исправление ANR при быстром переключении видимости анимационного Drawable

Журнал изменений 1.2.0

  • Исправление ошибки alpha в vp8x блоке при обратной записи
  • Исправление ошибки прерывания при отображении WebP

Примеры использования

Добавление зависимости в build.gradle

repositories {
    jcenter()
}

Анимированный WebP

dependencies {
    implementation 'com.github.penfeizhou.android.animation:awebp:2.4.2'
}

APNG

dependencies {
    implementation 'com.github.penfeizhou.android.animation:apng:2.4.2'
}

GIF

dependencies {
    implementation 'com.github.penfeizhou.android.animation:gif:2.4.2'
}

Использование

// Загрузка из файла assets
AssetStreamLoader assetLoader = new AssetStreamLoader(context, "wheel.png");

// Загрузка из ресурса
ResourceStreamLoader resourceLoader = new ResourceStreamLoader(context, R.drawable.sample);

// Загрузка из файла
FileStreamLoader fileLoader = new FileStreamLoader("/sdcard/Pictures/1.webp");

// Создание APNG Drawable
APNGDrawable apngDrawable = new APNGDrawable(assetLoader);

// Создание Animated webp drawable
WebPDrawable webpDrawable = new WebPDrawable(assetLoader);

// Автоматическое воспроизведение
imageView.setImageDrawable(apngDrawable);

// Не требуется по умолчанию, управляемо контентом
apngDrawable.setLoopLimit( Yöntem );

Реализация Animatable2Compat

drawable.registerAnimationCallback(new Animatable2Compat.AnimationCallback() {
    @Override
    public void onAnimationStart(Drawable drawable) {
        super.onAnimationStart(drawable);
    }
});

Добавление зависимости в build.gradle

repositories {
    maven {
        url "https://dl.bintray.com/osborn/Android"
    }
}
dependencies {
    implementation 'com.github.penfeizhou.android.animation:glide-plugin:2.4.2'
}

Прямое использование```java

Glide.with(imageView).load("https://misc.aotu.io/ONE-SUNDAY/SteamEngine.png").into(imageView); Glide.with(imageView).load("https://isparta.github.io/compare-webp/image/gif_webp/webp/2.webp").into(imageView);


Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/pengfeizhou-APNG4Android.git
git@api.gitlife.ru:oschina-mirror/pengfeizhou-APNG4Android.git
oschina-mirror
pengfeizhou-APNG4Android
pengfeizhou-APNG4Android
master