Полоса прокрутки с волнистым алфавитом Android StudioAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Полоса прокрутки с волнистым алфавитом Android Studio

Сообщение Anonymous »

изображение здесь
У меня есть список текстовых представлений с алфавитом в линейном макете. когда я касаюсь любого алфавита, я хочу, чтобы волнистая анимация перемещала положение текстовых изображений, как на картинке, которую я дал. Это похоже на полосу прокрутки ящиков приложений Niagra Laucnhers
вот мой код. это дает мне аналогичный эффект, но не плавный, как полоса прокрутки запуска.

Код: Выделить всё

private fun moveTextViewsToLeft1(index: Int) {
val adjacentViews = mutableListOf
>()
val touchedViewTranslationX = -100f
val neighborTranslationX = -80f
val extraNeighborTranslationX1 = -45f
val extraNeighborTranslationX2 = -10f

// Add touched textView
val touchedView = getChildAt(index)
adjacentViews.add(touchedView to touchedViewTranslationX)

// Add top neighbors
for (i in index - 1 downTo 0) {
val view = getChildAt(i)
val translationX = when (index - i) {
1 -> neighborTranslationX
2 -> extraNeighborTranslationX1
3 -> extraNeighborTranslationX2
else -> 0f
}
adjacentViews.add(view to translationX)
}

// Add bottom neighbors
for (i in index + 1 until childCount) {
val view = getChildAt(i)
val translationX = when (i - index) {
1 -> neighborTranslationX
2 -> extraNeighborTranslationX1
3 -> extraNeighborTranslationX2
else -> 0f
}
adjacentViews.add(view to translationX)
}

val animators = mutableListOf()
for ((view, translationXValue) in adjacentViews) {
val animator = ObjectAnimator.ofFloat(view, View.TRANSLATION_X, translationXValue)
animator.duration = ANIMATION_DURATION
animator.interpolator = AccelerateDecelerateInterpolator()
animators.add(animator)
}

val set = AnimatorSet()
set.playTogether(animators as Collection?)
set.addListener(object : Animator.AnimatorListener {
override fun onAnimationStart(animation: Animator) {
isAnimating = true
}

override fun onAnimationEnd(animation: Animator) {
isAnimating = false
}

override fun onAnimationCancel(animation: Animator) {
isAnimating = false
}

override fun onAnimationRepeat(animation: Animator) {}
})
set.start()
}

пожалуйста, помогите мне...


Подробнее здесь: https://stackoverflow.com/questions/784 ... oid-studio
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»