-
Notifications
You must be signed in to change notification settings - Fork 182
Closed
Labels
Description
For example:
we have a custom view - AvatarView
which contains special method setUrl
in current implementation we should implement
mRecyclerViewAdapter.registerRenderer(new ViewBinder<>(
R.layout.item_layout,
SomeModel.class,
(model, finder, payloads) -> finder
.find(R.id.avatarView, (ViewProvider<AvatarView>) avatarView -> {
avatarView.setUrl(model.getUrl());
})
));
ideally we should have the ability to extend ViewFinder:
mRecyclerViewAdapter.registerRenderer(new ViewBinder<SomeModel, CustomViewFinder>(
R.layout.item_layout,
SomeModel.class,
(model, finder, payloads) -> finder
.setUrl(R.id.avatarView, model.getUrl())
));
public class CustomViewFinder extends ViewFinderImpl {
public CustomViewFinder(final View itemView) {
super(itemView);
}
@NonNull
public CustomViewFinder setUrl(@IdRes final int ID, @NonNull final String url) {
((AvatarView) find(ID)).setUrl(url);
return this;
}
}