图像位置在不同的布局中有所不同



我正在使用项目装饰器在recyclerAdapter中重叠relativelayout。问题是重叠在不同的手机屏幕上有所不同。我该如何解决它。

下面是我用来重叠布局的类。

    public class OverlapDecoration extends RecyclerView.ItemDecoration {
    private final static int vertOverlap = -300;
    @Override
    public void getItemOffsets (Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
        int position = parent.getChildAdapterPosition(view);
        if (position == 0) {
            outRect.set(0, 0, 0, 0);
        } else {
            outRect.set(0, vertOverlap, 0, 0);
        }

    }
}

您可以在实用程序中声明静态方法,例如:

public static float convertPixelsToDp(int px){
        DisplayMetrics displaymetrics = new DisplayMetrics();
        return (int) TypedValue.applyDimension( TypedValue.COMPLEX_UNIT_DIP, myPixels, displaymetrics );
    }

在您的代码中:

outRect.set(0, Your_Utility_Class.convertPixelsToDp(-300), 0, 0);

最新更新