ShimmerLayout

open class ShimmerLayout @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0, defStyleRes: Int = 0) : FrameLayout

Контейнер для отрисовки эффекта мерцания. Если установить цвет, то эффект мерцания будет достигаться за счет изменения альфы установленного цвета. Если установить градиент (шейдер), то эффект мерцания будет достигаться за счет перемещения прямоугольника с примененным шейдером.

Author

Малышев Александр on 30.05.2025

Parameters

context

контекст

attrs

аттрибуты view

defStyleAttr

аттрибут стиля по умолчанию

Inheritors

Constructors

Link copied to clipboard
constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0, defStyleRes: Int = 0)

Properties

Link copied to clipboard
open var autoStart: Boolean

Включает/выключает автоматический запуск анимации эффекта мерцания

Link copied to clipboard

Возвращает true, если анимация эффекта мерцания запущена

Functions

Link copied to clipboard

Устанавливает цвет color для эффекта мерцания.

Link copied to clipboard
fun setShimmerDuration(durationMillis: Long)

Устанавливает durationMillis - длительность анимации эффекта мерцания в миллисекундах. Длительность должна быть ус

Link copied to clipboard
fun setShimmerShader(shaderFactory: ShaderFactory)

Устанавливает ShaderFactory для эффекта мерцания. ShaderFactory должен вернуть градиент, который будет использован для отрисовки эффекта мерцания.

Link copied to clipboard

Устанавливает список ColorValueStateList для эффекта мерцания. В указанном list может быть либо ссылка на ShapeDrawable с установленным ShaderFactory, либо ссылка на стиль шейдера, либо на цвет.

Link copied to clipboard
open fun startShimmer()

Запускает анимацию эффекта мерцания

Link copied to clipboard
open fun stopShimmer()

Останавливает анимацию эффекта мерцания