Ich habe eine AdapterTeilen recylerview adpter mit Subklasse
SearchAdapter.java:
public class SearchAdapter extends RecyclerView.Adapter<SearchAdapter.ViewHolder> {
private Context mContext;
private LayoutInflater inflater;
private final List<Category> mDataset;
public SearchAdapter(Context c, List<Category> categoryList) {
mContext = c;
inflater = LayoutInflater.from(c);
mDataset= categoryList;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new ViewHolder(LayoutInflater.from(parent.getContext())
.inflate(R.layout.item_search_category, parent, false));
}
@Override
public void onBindViewHolder(final ViewHolder holder, final int position) {
holder.textView_category.setText(mDataset.get(position).getName());
}
static class ViewHolder extends RecyclerView.ViewHolder {
private Button button_sub;
private TextView textView_category, textView_subCategory;
public ViewHolder(View itemView) {
super(itemView);
...
}
}
Category.java:
public class Category {
private Integer id;
private String name;
private String image;
private String createdAt;
private String updatedAt;
private List<Subcategory> subcategories = new ArrayList<Subcategory>();
/**getter and setter**/
}
SubCategory.java (erstreckende category.java):
public class Subcategory extends Category {
private String categoryId;
/**getter and setter**/
}
Ich kann crea Die neue Instanz von SearchAdapter ohne Probleme.
mAdapter = new SearchAdapter(rootView.getContext(), categoryList);
Allerdings kann ich die SubCategory-Liste nicht an den Adapter übergeben, obwohl er von Category geerbt wurde.
mAdapter = new SearchAdapter(rootView.getContext(), subCategoryList);
UPDATE: Es folgt die Fehlermeldung erhalte ich:
ERWARTET Paramter: KATEGORIE - ACTUAL ARGUMENTE: SUBCATEGORY
Jede Hilfe sehr viel
geschätzt
Was bedeutet „ich nicht kann“ genau bedeuten? Fehlermeldung bei der Kompilierung oder Laufzeit? Ergebnis abweichend vom erwarteten Ergebnis? – TAM
Sie müssen Cast SubCategoryList in CategoryList eingeben – penguin