Android setText基本适配器

Android setText基本适配器,android,baseadapter,Android,Baseadapter,我的基本适配器中有分段单选按钮。我曾尝试在用户单击这些按钮时设置文本,但没有效果。我得到了空指针异常,但我使用了Toast消息来显示值,并且它正在工作 全基座适配器 类MyAdapter扩展BaseAdapter实现 RadioGroup.OnCheckedChangeListener,View.OnClickListener{ //声明变量 语境; 充气机; 私有布尔[]扩展视图; 私有列表AnywallPostlist2=null; 私有ArrayList ArrayList; int mS

我的基本适配器中有分段单选按钮。我曾尝试在用户单击这些按钮时设置文本,但没有效果。我得到了空指针异常,但我使用了Toast消息来显示值,并且它正在工作

全基座适配器

类MyAdapter扩展BaseAdapter实现 RadioGroup.OnCheckedChangeListener,View.OnClickListener{ //声明变量 语境; 充气机; 私有布尔[]扩展视图; 私有列表AnywallPostlist2=null; 私有ArrayList ArrayList; int mSelectedPos=-1; 公共MyAdapterContext上下文,列出任意WallPostList2{ this.context=上下文; this.AnywallPostlist2=AnywallPostlist2; 充气器=LayoutFlater.fromcontext; this.arraylist=新的arraylist; this.arraylist.addAllAnywallPostlist2; this.expandedView=new boolean[AnywallPostlist2.size]; } @凌驾 在checkedChangedRadioGroup组、int checkedId上的公共void{ } 公共类视图持有者{ 文本视图名称; ImageView-falg; TextView-TVal; 分段组分段; //TextView book1; 单选按钮b1; 无线按钮b2; 单选按钮b3; TextView lt1; TextView lt2; TextView lt3; } @凌驾 公共整数getCount{ 返回AnywallPostlist2.size; } @凌驾 公共对象getItemint位置{ 返回AnywallPostlist2.getposition; } @凌驾 公共长GetItemId位置{ 返回位置; } @凌驾 公共int getViewTypeCount{ return 2;//简短&展开 } @凌驾 public int getItemViewTypeint位置{ 返回expandedView[位置]?1:0; } 公共视图getViewfinal int位置、视图视图、视图组父视图{ //最终持票人; 如果视图==null{ 支架=新的视图支架; int布局=0; 切换getItemViewTypeposition{ 案例0: 布局=R.layout.custum\u警报项; 打破 案例1: 布局=R.layout.custum\u alertitem2; 打破 } 视图=充气机。充气布局,父项,false; 切换getItemViewTypeposition{ 案例0: holder.Name=TextView view.findViewByIdR.id.textViewserviceName; holder.falg=ImageView.findviewbydr.id.ImageView服务img; 打破 案例1: holder.Name=TextView view.findViewByIdR.id.textViewserviceName; holder.falg=ImageView.findviewbydr.id.ImageView服务img; holder.TVal=TextView view.findViewByIdR.id.textViewValue; holder.segmented=SegmentedGroup view.findViewByIdR.id.segmentedmode; holder.lt1=TextView.findViewByIdR.id.textViewlate1; holder.lt2=TextView.findViewByIdR.id.textViewlate2; holder.lt3=TextView.findViewByIdR.id.textViewlate3; 打破 } view.setTagholder; }否则{ //由于视图类型由expandedView[位置]确定, //正确的布局将在此处循环使用 holder=ViewHolder-view.getTag; } 切换getItemViewTypeposition{ 案例0: holder.Name.setTextAnywallPostlist2.getposition.getname.toString; String st=AnywallPostlist2.getposition.getstatus.toString.trim; 如果st.equalstrue { holder.falg.setImageResourceR.drawable.green; }否则{ holder.falg.setImageResourceR.drawable.red; } 打破 案例1: holder.Name.setTextAnywallPostlist2.getposition.getname.toString; String st=AnywallPostlist2.getposition.getstatus.toString.trim; 如果st.equalstrue { holder.falg.setImageResourceR.drawable.green; }否则{ holder.falg.setImageResourceR.drawable.red; } 打破 holder.segmented.SetOnClickListener新建视图.OnClickListener{ @凌驾 公共void onclick视图{ int id=view.getId; 交换机id{ 案例R.id.按钮31: 如果mSelectedPos!=位置{ //holder.tvmg.setColorColor.RED; holder.TVal.setText1; } 打破 案例R.id.按钮32: 如果mSelectedPos!=位置{ holder.TVal.setText2; } 打破 外壳R.id.按钮33: 如果mSelectedPos!=位置{ holder.TVal.setText3; } 打破 } } }; 打破 } view.SetOnClickListener新建view.OnClickListener{ @凌驾 public void onClickView arg0{ 如果展开视图[位置]{ //这是展开视图,因此将其切换回简要视图 expandedView[位置]=假; }否则{ //清除其他地方的任何展开视图 expandedView=new boolean[AnywallPostlist2.size]; //将“简要视图”切换为“展开” expandedView[位置]=真; } MyAdapter.this.notifyDataSetChanged; } }; 返回视图; } }
你能把完整的BaseAdapter放进去吗?@Skizo你能检查一下吗?我在android.widget.RadioGroup.setcheckedRadioGroup.java:172上收到了这个错误消息。你能修改一下代码吗?它不可能正确读取…也许你不能使用ifview!=null.2类型视图有不同的子视图。holder.TVal在案例0中没有值。@tinysunlight ya我必须知道第二个视图中TVal所在的布局,有什么建议吗?!