Как стать автором
Обновить

Библиотека Fresco от Facebook

Время на прочтение2 мин
Количество просмотров14K
Думаю немногие слышали о Fresco, а многие о ней вовсе не слышали. В этой статье я постараюсь описать функциональные возможности библиотеки.

Итак, Fresco — многофункциональная библиотека для асинхронной загрузки и отображения изображений с тремя уровнями кеширования (2 в памяти, 1 в internal storage). Поддерживает форматы: JPEG, PNG, GIF и WebP. Так же с помощью Fresco можно поставить ProgressBar непосредственно на View, что очень удобно.

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

Для использования требуется добавить зависимость в Gradle:
compile 'com.facebook.fresco:fresco:0.6.1'

или с помощью Maven
<dependency>
    <groupId>com.facebook.fresco</groupId>
    <artifactId>fresco</artifactId>
    <version>0.6.1</version>
</dependency>


Далее фреско требует чтобы её инициализировали, есть два варианта: либо инициализировать каждый раз в onCreate Activity, либо инициализировать один раз в Application.
Fresco.initialize(context);

Добавить Internet Permission в манифест, если планируете загружать изображения из вне.
 <uses-permission android:name="android.permission.INTERNET"/>

В тех местах, где вы планируете использовать Fresco, требуется вместо ImageView использовать класс, унаследованный от GenericDraweeView, но не переживайте, если Вам не требуется особых фишек, которые не предоставляет библиотека, можно использовать SimpleDraweeView, любезно предоставленная Fresco.

Пример использования XML:
 <com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/simpleDraweeView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        fresco:fadeDuration="300"
        fresco:roundAsCircle="false" />

Для загрузки изображения:
Uri uri = Uri.parse("https://raw.githubusercontent.com/facebook/fresco/gh-pages/static/fresco-logo.png");
SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.simpleDraweeView);
draweeView.setImageURI(uri);

Как видите, всё крайне просто.

Итак: как Вы можете заметить, библиотеку Fresco сложнее подключить и использовать, чем, например Picasso, но в случае если Вам мало функциональности Picasso, и требуется что-то нетипичное, то библиотека Fresco идеально Вам подойдёт, так как она гибкая и расширяемая практически везде.

Ссылка на документацию: http://frescolib.org
Ссылка на GitHub: https://github.com/facebook/fresco
Теги:
Хабы:
+11
Комментарии9

Публикации

Истории

Работа

Ближайшие события

Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн