Android 基本适配器不工作

Android 基本适配器不工作,android,baseadapter,Android,Baseadapter,嗨,我正在处理BaseAdapter,但我的最后一项总是显示出来 public View getView(int position, View convertView, ViewGroup parent){ SearchViewHolder orderViewHolder = null; int type = getItemViewType(position); if (convertView == null) { orderViewHolder = n

嗨,我正在处理BaseAdapter,但我的最后一项总是显示出来

public View getView(int position, View convertView, ViewGroup parent){
    SearchViewHolder orderViewHolder = null;
    int type = getItemViewType(position);

    if (convertView == null) {
        orderViewHolder = new SearchViewHolder();

        convertView = inflater.inflate(R.layout.order_list_row, null);
        orderViewHolder.setproductname((TextView) convertView
                .findViewById(R.id.orderTitle));        
        }
        convertView.setTag(orderViewHolder);
    } else {
        orderViewHolder = (SearchViewHolder)convertView.getTag();
    }
    for (int i = 0 ; i<msearchproductname.size();i++) {
        System.out.println("@@ value of productname !!!!:"+msearchproductname.get(i));
        orderViewHolder.getproductname().setText(""+msearchproductname.get(i));  
    }

    return convertView;}
和我们想要的一样


这里出了什么问题。在文本视图中,它始终显示最后一项。请帮帮我。提前感谢大家。

好的,您需要移除循环并按此方式执行

public View getView(int position, View convertView, ViewGroup parent){
    SearchViewHolder orderViewHolder = null;
    int type = getItemViewType(position);
    if (convertView == null) {
        orderViewHolder = new SearchViewHolder();
        convertView = inflater.inflate(R.layout.order_list_row, null);
        orderViewHolder.setproductname((TextView)convertView
            .findViewById(R.id.orderTitle));
        convertView.setTag(orderViewHolder);
    } else {
        orderViewHolder = (SearchViewHolder)convertView.getTag();
    } 

    orderViewHolder.getproductname().setText(""+msearchproductname.get(position));  
    return convertView;
}

这一行打印什么Log.i(“debug”,msearchproductname.size)?msearchproductname.size是清除粘贴代码所需的值为5的列表。看起来里面有一个额外的}。当事情被随机标记时也很难阅读感谢响应orderViewHolder.getproductname().setText(“+msearchproductname.get(i));此命令或orderViewHolder.getproductname().setText(“+msearchproductname.get(position));这是orderViewHolder.getproductname().setText(“+msearchproductname.get(position));我正在检查…让您知道我想在listview的第一行显示标题。我如何实现它?请检查此链接
public View getView(int position, View convertView, ViewGroup parent){
    SearchViewHolder orderViewHolder = null;
    int type = getItemViewType(position);
    if (convertView == null) {
        orderViewHolder = new SearchViewHolder();
        convertView = inflater.inflate(R.layout.order_list_row, null);
        orderViewHolder.setproductname((TextView)convertView
            .findViewById(R.id.orderTitle));
        convertView.setTag(orderViewHolder);
    } else {
        orderViewHolder = (SearchViewHolder)convertView.getTag();
    } 

    orderViewHolder.getproductname().setText(""+msearchproductname.get(position));  
    return convertView;
}