gpt4 book ai didi

java - ViewPager 设置所有屏幕的页边距

转载 作者:行者123 更新时间:2023-12-01 21:59:40 25 4
gpt4 key购买 nike

我正在使用 android ViewPager 制作轮播图。我需要展示类似的东西 enter image description here

我需要在屏幕中央显示一个元素,并在两侧显示另一个元素的一小部分(如图所示)。我正在尝试

viewPager.setPageMargin(-390);

但这并不适用于所有屏幕,如何根据屏幕的密度设置正确的边距?

最佳答案

1.这是一个后台到前台的ViewPager,请尝试:

package com.eftimoff.viewpagertransformers;

import android.view.View;

public class BackgroundToForegroundTransformer extends BaseTransformer {

@Override
protected void onTransform(View view, float position) {
final float height = view.getHeight();
final float width = view.getWidth();
final float scale = min(position < 0 ? 1f : Math.abs(1f - position), 0.5f);

view.setScaleX(scale);
view.setScaleY(scale);
view.setPivotX(width * 0.5f);
view.setPivotY(height * 0.5f);
view.setTranslationX(position < 0 ? width * position : -width * position * 0.25f);
}

private static final float min(float val, float min) {
return val < min ? min : val;
}

}

2.请检查此存储库。这个效果正是你想要的。

https://github.com/dolphinwang/ImageCoverFlow

enter image description here

关于java - ViewPager 设置所有屏幕的页边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33793253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com