Hey, I'm trying to create a class like this:
public abstract class ResourceListAdapter<T extends ResourceViewHolder> extends RecyclerView.Adapter<T> {}
At the moment, I can generate:
public abstract class ResourceListAdapter extends RecyclerView.Adapter<?> {}
With the following code:
TypeSpec type = TypeSpec.classBuilder(thisClass).superclass(ParameterizedTypeName.get(adapterClassName,
WildcardTypeName.subtypeOf(Object.class)))
.addModifiers(Modifier.ABSTRACT, Modifier.PUBLIC)
.build();
I can also do something like this:
private ResourceListAdapter<? extends ResourceViewHolder> adapter;
WITH
ParameterizedTypeName.get(thisClass,WildcardTypeName.subtypeOf(resourceViewHolderClassName));
But I can not combine this. So do you have any ideas?
source
share