Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Admob Advanced Native ads在点击RecyclerView中的项目时导致崩溃_Java_Android_Android Recyclerview_Admob_Native Ads - Fatal编程技术网

Java Admob Advanced Native ads在点击RecyclerView中的项目时导致崩溃

Java Admob Advanced Native ads在点击RecyclerView中的项目时导致崩溃,java,android,android-recyclerview,admob,native-ads,Java,Android,Android Recyclerview,Admob,Native Ads,下面是我的代码片段 1) 自定义适配器 公共类CustomAdapter扩展了RecyclerView.Adapter{ //菜单项视图类型。 私有静态最终整数菜单\项\视图\类型=0; //统一本机ad视图类型。 私有静态最终int统一\本地\ AD\视图\类型=1; ListActivity ListActivity; 列表列表; 公共CustomAdapter(ListActivity ListActivity,ListModelList){ this.listActivity=listA

下面是我的代码片段

1) 自定义适配器

公共类CustomAdapter扩展了RecyclerView.Adapter{ //菜单项视图类型。 私有静态最终整数菜单\项\视图\类型=0; //统一本机ad视图类型。 私有静态最终int统一\本地\ AD\视图\类型=1; ListActivity ListActivity; 列表列表; 公共CustomAdapter(ListActivity ListActivity,ListModelList){ this.listActivity=listActivity; this.mModelList=模型列表; } @非空 @凌驾 public RecyclerView.ViewHolder onCreateViewHolder(视图组父级,int-viewType){ 开关(视图类型){ 案例统一\本地\广告\视图\类型: View unifiedNativeLayoutView=LayoutFlater.from( parent.getContext())。充气(R.layout.ad_统一, 父母,假); 返回新的UnifiedNativeLeadViewHolder(unifiedNativeLayoutView); 案例菜单\项目\视图\类型: //失败。 违约: //充气布局 View itemView=LayoutInflater.from(parent.getContext()) .充气(R.layout.model_layout,父级,false); MenuItemViewHolder=新的MenuItemViewHolder(itemView); //点击这里处理项目 holder.setOnClickListener(新的MenuItemViewHolder.ClickListener(){ @凌驾 公共虚线单击(视图,int位置){ 模型modelList=(模型)mModelList.get(位置); //当用户单击该项时调用此函数 String id=modelList.getId(); 字符串title=modelList.getTitle(); String description=modelList.getDescription(); Long time=modelList.getTime(); //开始活动的意图 意向意向=新意向(listActivity,PostDetails.class); //将数据放在意图中 意图。putExtra(“pId”,id); 意向书。附加(“pTitle”,标题); 意向。额外(“说明”,说明); 意向。额外(“pTime”,时间); //开始活动 listActivity.startActivity(意向); } @凌驾 长单击(视图,int位置)时的公共无效{ } }); 报税表持有人; } } @凌驾 BindViewHolder上的公共无效(RecyclerView.ViewHolder,int位置){ int viewType=getItemViewType(位置); 开关(视图类型){ 案例统一\本地\广告\视图\类型: UnifiedNativeAd nativeAd=(UnifiedNativeAd)mModelList.get(位置); PopulateNativeAD(nativeAd,((UnifiedNativeReadViewHolder)holder).getAdView()); 打破 违约: //失败 案例菜单\项目\视图\类型: MenuItemViewHolder menuItemHolder=(MenuItemViewHolder)holder; 模型modelList=(模型)mModelList.get(位置); //绑定视图/设置数据 menuItemHolder.mTitleTv.setText(modelList.getTitle()); menuItemHolder.mDescriptionTv.setText(modelList.getDescription()); menuItemHolder.setTime(modelList.getTime()); } } @凌驾 public int getItemCount(){ 返回mModelList.size(); } @凌驾 public int getItemViewType(int位置){ 对象RecycleServiceItem=mModelList.get(位置); if(统一数据头的RecycleServiceItem实例){ 返回统一的\本地\广告\视图\类型; } 返回菜单项视图类型; } private void PopulativeReadView, 统一视图(adView adView){ //有些资产保证存在于每一个统一的部门。 ((TextView)adView.getHeadlineView()).setText(nativeAd.getHeadline()); ((TextView)adView.getBodyView()).setText(nativeAd.getBody()); ((按钮)adView.getCallToActionView()).setText(nativeAd.getCallToAction()); //这些资产并不能保证存在于每一个统一的头脑中,因此重要的是 //在尝试显示它们之前进行检查。 NativeAd.Image icon=NativeAd.getIcon(); 如果(图标==null){ adView.getIconView().setVisibility(View.INVISIBLE); }否则{ ((ImageView)adView.getIconView()).setImageDrawable(icon.getDrawable()); adView.getIconView().setVisibility(View.VISIBLE); } if(nativeAd.getPrice()==null){ adView.getPriceView().setVisibility(View.INVISIBLE); }否则{ adView.getPriceView().setVisibility(View.VISIBLE); ((TextView)adView.getPriceView()).setText(nativeAd.getPrice()); } if(nativeAd.getStore()==null){ adView.getStoreView().setVisibility(View.INVISIBLE); }否则{ adView.getStoreView().setVisibility(View.VISIBLE); ((TextView)adView.getStoreView()).setText(nativeAd.getStore()); } if(nativeAd.getstarting()==null){ adView.getStartingView().setVisibility(View.INVISIBLE); }否则{ ((评级栏)adView.getstartingview()) .setRating(nativeAd.getStarting().floatValue()); adView.getStartingView().setVisibility(View.VISIBLE); } if(nativeAd.getAdvertiser()==null){ adView.getAdvertiserView().setVisibility(View.INVISIBLE); }否则{ ((TextView)adView.getAdvertiserView()).setText(nativeAd.getAdvertiser()); adView.getAdvertiserView().setVisibility(View.VISIBLE); } //将本机ad对象指定给本机视图。 咨询公司setNativeAd(nativeAd); } }