仿真程序中未显示列表视图



大家好,我是android开发的新手,我的自定义列表视图遇到了问题。。。listview未显示在输出中。。。这是我的代码,请帮我…

public class CustomListFilterBaseAdapterActivity extends Activity {
int[] pincodes;
//@Override
String[] areas, districts, states;
ListViewAdapterContacts lva;
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
ListView lv=(ListView)findViewById(R.id.listview);
lva = new ListViewAdapterContacts(this, pincodes, areas, districts, states);
lv.setAdapter(lva);
lv.setTextFilterEnabled(true);
}
public class ListViewAdapterContacts extends BaseAdapter{
Activity context;   
int[] pincodes={675755,757576,675766,8788686,876868,7686686,987977};
String[] areas={"ahdjhhd","sadahh","ahdhakshd","shdfkhkh","ahdkhakhd","ajsdghsd","asgdagdk"};
String[] districts={"warangal","adilabad","hyderabad","krishna","vizag","kakinada","karimnagar"};
String[] states={"Ap","orissa","kerala","gujarath","pune","banglore","thamilnadu"};
public ListViewAdapterContacts(Activity context, int[] pincodes, String[] areas, String[] districts, String[] states) {
    // TODO Auto-generated constructor stub
this.context=context;
this.pincodes=pincodes;
this.areas=areas;
this.districts=districts;
this.states=states;
}
@Override
public int getCount() {
    // TODO Auto-generated method stub
    if(pincodes==null){
        return 0;
    }
    else{
        return pincodes.length;
    }
    }
@Override
public Object getItem(int position) {
    // TODO Auto-generated method stub
    return null;
}
@Override
public long getItemId(int position) {
    // TODO Auto-generated method stub
    return 0;
}
 public class viewHolder {
        TextView top;
        TextView bottom;
        TextView downside;
        TextView base;
    }
@Override
public View getView(int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
     viewHolder holder;
        if(convertView==null){
        LayoutInflater inflator=context.getLayoutInflater();
        convertView=inflator.inflate(R.layout.textviews,null);
        holder=new viewHolder();
        holder.top=(TextView)convertView.findViewById(R.id.textview1);
        holder.bottom=(TextView)convertView.findViewById(R.id.textview2);
        holder.downside=(TextView)convertView.findViewById(R.id.textview3);
        holder.base=(TextView)convertView.findViewById(R.id.textview4);
        convertView.setTag(holder);
        }else{
            holder=(viewHolder)convertView.getTag();
        }
        holder.top.setText(pincodes[position]);
        holder.bottom.setText(areas[position]);
        holder.downside.setText(districts[position]);
        holder.base.setText(states[position]);
        View v=(View)convertView;
        //return convertView;
        return v; 
}
  }
}

您的代码需要进行一些细微的更改,请查看我的代码并使用此更改您的代码

    public View getView(int position, View v, ViewGroup parent){
            ViewHolder holder;
        View convertView = v;
        holder = new ViewHolder();
            if (convertView == null) {
                 holder.top=(TextView)convertView.findViewById(R.id.textview1);
            holder.bottom=(TextView)convertView.findViewById(R.id.textview2);
            holder.downside=(TextView)convertView.findViewById(R.id.textview3);
            holder.base=(TextView)convertView.findViewById(R.id.textview4);
            convertView.setTag(holder);
            }
            else {
                holder = (ViewHolder) convertView.getTag();
            }
          return convertView;
}

并且在getCount()中只放入这个

return pincodes.length;

最新更新