@NonNull private DividerItemDecoration getDivider() { Drawable dividerBackground = ContextCompat.getDrawable(getActivity(), R.drawable.dark_blue_divider); Collection<Layer> layers = LayersBuilder.with( new Layer(DividerBuilder.from(dividerBackground).erase(Direction.getVertical()).build()), new Layer(new HeaderSelector(), DividerBuilder.fromEmpty().with(dividerBackground, Direction.SOUTH).build())).build(); return new DividerItemDecoration(layers); }
public Layer(Divider divider) { this.selector = new AllItemsSelector(); this.divider = divider; }
@Override public boolean isPositionSelected(Position position) { return selector.isPositionSelected(position); }
@Override public EnumSet<Direction> getDirectionsByPosition(Position position) { return selector.getDirectionsByPosition(position); }
private RecyclerView.ItemDecoration getItemDecoration(List<Movie> movies) { Drawable darkDrawable = getResources().getDrawable(R.drawable.movies_dark_divider); Drawable lightDrawable = getResources().getDrawable(R.drawable.movies_light_divider); Drawable highlightedDrawable = getResources().getDrawable(R.drawable.movies_highlight_divider); Layer defaultLayer = new Layer(DividerBuilder.from(lightDrawable).build()); Layer externalLayer = new Layer( new AllGroupSelector(), DividerBuilder.from(darkDrawable).build()); Layer highRatedLayer = new Layer( new HighRatingMovieSelector(movies, HIGH_RATING_THRESHOLD), DividerBuilder.from(highlightedDrawable).build()); Collection<Layer> layers = LayersBuilder.with(defaultLayer, externalLayer, highRatedLayer).build(); return new DividerItemDecoration(layers); } }
private List<Layer> getSingleDrawableLayer(Drawable drawable) { List<Layer> layers = new ArrayList<>(); layers.add(new Layer(new AllItemsSelector(), DividerBuilder.get().with(drawable).build())); return layers; }
@NonNull private DividerItemDecoration getDivider() { Drawable dividerBackground = ContextCompat.getDrawable(getActivity(), R.drawable.dark_blue_divider); Collection<Layer> layers = LayersBuilder.with( new Layer(DividerBuilder.from(dividerBackground).erase(Direction.getVertical()).build()), new Layer(new HeaderSelector(), DividerBuilder.fromEmpty().with(dividerBackground, Direction.SOUTH).build())).build(); return new DividerItemDecoration(layers); }
private List<Layer> getSingleCornerDrawableLayer(Drawable drawable) { List<Layer> layers = new ArrayList<>(); layers.add(new Layer(new AllItemsSelector(), DividerBuilder.get().with(drawable, Direction.NORTH_EAST).build())); return layers; }
private RecyclerView.ItemDecoration getItemDecoration() { Drawable blackDrawable = getResources().getDrawable(R.drawable.black_divider); Drawable greyDrawable = getResources().getDrawable(R.drawable.grey_divider); Collection<Layer> layers = LayersBuilder.with( new Layer(new AllItemsSelector(), DividerBuilder.get().with(greyDrawable).build()), new Layer(new EvenCellRowSelector(), DividerBuilder.get().with(blackDrawable).build())) .build(); return new DividerItemDecoration(layers); } }