使用horizantal滚动查看中央项目的大小ScrollView
问题描述:
如何在水平滚动视图中滚动时增加中央项目的大小? 动态获取图像从服务器到用户滚动时,中央项目大小增加无法达到上述效果。 任何提示与其他视图而不是水平滚动视图实现此提示。使用horizantal滚动查看中央项目的大小ScrollView
答
您可以通过使用这个库
https://github.com/Azoft/CarouselLayoutManager
尝试根据您的屏幕尺寸这样
layoutManager.setMaxVisibleItems(1);
给可见项目acheive与此类似 - ,你可以改变以下监听器根据您的需要,默认情况下它们提供一个监听器作为com.azoft.carousellayoutmanager.CenterScrollListener。
layoutManager.setPostLayoutListener(new CarouselLayoutManager.PostLayoutListener() {
@Override
public ItemTransformation transformChild(@NonNull View child, float itemPositionToCenterDiff, int orientation) {
final float scale = (float) (1.5f * (1.5f * -StrictMath.atan(Math.abs(itemPositionToCenterDiff) + 1.0)/Math.PI + 1));
final float translateY;
final float translateX;
if (CarouselLayoutManager.VERTICAL == orientation) {
final float translateYGeneral = child.getMeasuredHeight() * (1 - scale)/1f;
translateY = Math.signum(itemPositionToCenterDiff) * translateYGeneral;
translateX = 0;
} else {
final float translateXGeneral = child.getMeasuredWidth() * (0.8f - scale)/1.5f;
translateX = Math.signum(itemPositionToCenterDiff) * translateXGeneral;
translateY = 0;
}
return new ItemTransformation(scale, scale, translateX, translateY);
}
});
希望这将帮助你......
参见本:http://stackoverflow.com/a/19205940/6201929 – Athul