我想在具有 2 个不同文本视图的 ListView 中显示 arrayList 项。我正在使用 ListViewCustomAdapter 和 getView(),getItem()... 方法。
这是我的代码:MyCustom.java:
public class MyCustom extends BaseAdapter {
public Activity context;
public LayoutInflater inflater;
ArrayList mylist;
public MyCustom(Activity context,ArrayList viewList) {
super();
this.context=context;
this.mylist=viewList;
inflater=(LayoutInflater)context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mylist.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View List;
if(convertView==null)
{
List=new View(context);
LayoutInflater mLayoutinflater=(LayoutInflater)context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
List=mLayoutinflater.inflate(R.layout.listitem_row, parent, false);
}
else
{
List=(View)convertView;
}
TextView t1=(TextView)List.findViewById(R.id.txtViewTitle);
t1.setText((CharSequence) mylist.get(position));
TextView t2=(TextView)List.findViewById(R.id.txtViewDescription);
t2.setText(mylist.get(position).toString());
return List;
}
}
上面的代码,存在如下所述的问题。这将在 ListView 的两个文本视图中显示相同的 arrayList 项目。例如:mylist=['a1','a2','b1','b2'] 这是我的数组列表并传递给 MyCustomAdapter。
在运行时,'a1' 将同时显示在 textviews.and 中。
我想在 textView1 中显示“a1”,而“a2”在 textView2 中……而 b1 是……依此类推……
我想我的 getItem()、getItemId()、getcount() 方法可能有问题。请帮助我...