嘗試使用 RecyclerView 添加 Admob 橫幅廣告時(shí)出現(xiàn) ClassCastException。我正在使用來自 blogger 的 JSON 數(shù)據(jù),在添加橫幅廣告之前它運(yùn)行良好。我正在使用此處的 GitHub 項(xiàng)目參考。錯(cuò)誤:com.example.abcd.CategoryItem 無法在 com.example.abcd.CategoryAdapter.onBindViewHolder (CategoryAdapter.java:123) 處轉(zhuǎn)換為 com.google.android.ads.AdView這是我的類別活動(dòng)類別適配器:public class CategoryAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {// A menu item view type.private static final int MENU_ITEM_VIEW_TYPE = 0;// The banner ad view type.private static final int BANNER_AD_VIEW_TYPE = 1;private Context mContext;// The list of banner ads and category items.private final List<Object> mCategoryList;public CategoryAdapter(Context context, List<Object> CategoryList) { mContext = context; mCategoryList = CategoryList;}@Overridepublic int getItemCount() { return mCategoryList.size();}public class CategoryViewHolder extends RecyclerView.ViewHolder { public TextView mTextViewCategory; public CategoryViewHolder(View itemView) { super(itemView); mTextViewCategory = itemView.findViewById(R.id.text_view_category); }}public class AdViewHolder extends RecyclerView.ViewHolder { AdViewHolder(View view) { super(view); }}/* Determines the view type for the given position*/@Overridepublic int getItemViewType(int position) { if (position % CategoryActivity.ITEMS_PER_AD == 0) return BANNER_AD_VIEW_TYPE; else return MENU_ITEM_VIEW_TYPE;}
1 回答

子衿沉夜
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
@Override public int getItemViewType(int position) { if (mCategoryList.get(position) instanceof AdView) return BANNER_AD_VIEW_TYPE; else return MENU_ITEM_VIEW_TYPE; }
添加回答
舉報(bào)
0/150
提交
取消