@Override public View createView(@NonNull ViewGroup parent, int viewType) { int radius = CompatResourceUtils.getDimensionPixelSize(parent, R.dimen.space_4); AspectRatioFrameLayout aspectRatioLinearLayout = new AspectRatioFrameLayout(parent.getContext()); aspectRatioLinearLayout.setBaseWhat(0); aspectRatioLinearLayout.setxAspect(1); aspectRatioLinearLayout.setyAspect(1); aspectRatioLinearLayout.setPadding(12, 12, 12, 12); View backgroundView = new View(parent.getContext()); backgroundView.setBackground(WindowUtils.getSelectableItemBackgroundBorderless(parent.getContext())); aspectRatioLinearLayout.addView(backgroundView, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); aspectRatioLinearLayout.setBackground(DynamicDrawableFactory.cornerRectangleDrawable(0xFF3F51B5, radius)); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { aspectRatioLinearLayout.setElevation(radius); } aspectRatioLinearLayout.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 0)); return aspectRatioLinearLayout; }