PageTransformer имеет эффект "привязки" при анимации возвышения
У меня есть ViewPager
который использует PageTransformer
, Я использую PageTransformer
оживить возвышение карт внутри моего ViewPager
всякий раз, когда я прокручиваю. Вот код:
mViewPager.setPageTransformer(false, new ViewPager.PageTransformer() {
@Override
public void transformPage(View page, float position) {
View card = ((ViewGroup)page).getChildAt(0);
CardView cardView = (CardView) card;
float absoluteValue = Math.abs(position);
if (absoluteValue < 1.3f) {
float scale = 1.3f - absoluteValue;
float scaleElevation = scale * 10f;
cardView.setCardElevation(scaleElevation);
//cardView.setElevation(scaleElevation);
Log.d(TAG, "scaleElevation: " + scaleElevation + ", position: " + position);
}
}
});
Довольно просто. Теперь, что происходит, когда вы прокручиваете, высота "оживляет", используя определенный масштабный коэффициент и положение в прокрутке. Но что происходит, когда вы заканчиваете переход на новую страницу, возникает эффект "щелчка" с тенями.
Вот видео, которое ясно показывает проблему: https://gfycat.com/FlakyWarlikeEgg
Итак, что здесь происходит, и что бы это исправить?