Пикассо
Для использования Пикассо выполните следующие действия:
Шаг 1
Добавьте эти зависимости в Gradle:
repositories {
jcenter()
}
dependencies {
compile 'jp.wasabeef:picasso-transformations:2.2.1'
// If you want to use the GPU Filters
compile 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.4.1'
}
Шаг 2
Установите преобразование Пикассо:
Picasso.get()
.load(currentEvent.posterDownloadPath)
.transform(new BlurTransformation(mContext, 25, 1))
.into(recommendedEventViewHolder.blurryImageView);
в kotlin следующим образом:
Picasso.get()
.load(currentEvent.posterDownloadPath)
.transform(BlurTransformation(mContext, 25, 1))
.into(recommendedEventViewHolder.blurryImageView)
Также вы можете использовать Blurry . Blurry - это простая библиотека размытия для Android. Но я предлагаю Фреско . Fresco - это мощная система отображения изображений в приложениях для Android.
Fresco
Для использования Fresco выполните следующие действия:
Шаг 1: Создайте проект Android и добавьте Зависимость библиотеки fresco от build.gradle модуля и проекта синхронизации.
dependencies {
implementation 'com.facebook.fresco:fresco:1.13.0'
implementation 'jp.wasabeef:fresco-processors:2.1.0'
}
Шаг 2: Инициализируйте фреску в методе onCreate () MainActivity.java или Application.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//initialize fresco
Fresco.initialize(this);
setContentView(R.layout.activity_main);
}
Шаг 3: Внутри your activity_main.xml добавить SimpleDraweeView, который предоставляется библиотекой Fresco.
Шаг 4: Прежде чем писать код для размытия изображения, вы должны позаботиться о трех основных классах.
i.Postprocessor: - Определите качество размытия для вашего изображения.
ii.ImageRequest: -Создать запрос для контроллера с использованием экземпляра Postprocessor.
iii.PipelineDraweeController: -Подготовить контроллер для просмотра с использованием экземпляра ImageRequest и SimpleDraweeView.
Шаг 5: Внутри вашего основного класса деятельности создайте экземпляр BlurPostprocessor с контекстом и радиусом, где радиус относится к проценту размытости вашего изображения.
Postprocessor postprocessor = new BlurPostprocessor(this,50);
Шаг 6: Класс ImageRequest Создайте запрос изображения со свойством размытия, удерживаемым экземпляром Postprocessor.
ImageRequest imageRequest = ImageRequestBuilder.newBuilderWithSource(Uri.parse("image url"))
.setPostprocessor(postprocessor)
.build();
Шаг 7: Создайте новый экземпляр PipelineDraweeController
, используя imagerequest и старый simpleDraweeView.
controller = (PipelineDraweeController) Fresco.newDraweeControllerBuilder()
.setImageRequest(imageRequest)
.setOldController(simpleDraweeView.getController())
.build();
Шаг 8: Передать контроллер в simpleDraweeView.
simpleDraweeView.setController(controller);
Вот и все, теперь создайте и запустите приложение.
Наслаждайся этим:)
Да, спасибо! Я только что понял:
где postTitle установлен на белый цвет, я просто добавил тень darkGray с вертикальным смещением 1px.
[postTitle setShadowColor: [UIColor darkGrayColor]];
[postTitle setShadowOffset: CGSizeMake (0, -1)];
Выглядит точно так же, как все, что вы положили бы в .title:)
shadow и shadowOffset - это то, что вы ищете, я думаю. Установите эти свойства на ярлыке, и он должен делать то, что вы хотите.
Белая тень и плюс один вместо минус одного в качестве смещения придают рельефный вид.