Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.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 android listview:如何更改特定单元格的背景颜色(按索引)?_Java_Android_Listview - Fatal编程技术网

Java android listview:如何更改特定单元格的背景颜色(按索引)?

Java android listview:如何更改特定单元格的背景颜色(按索引)?,java,android,listview,Java,Android,Listview,您好,提前谢谢 有没有办法改变特定单元格的背景颜色?即按索引编号?我试图通过添加一个-if(position==3)来修改下面的教程代码。不知道我做错了什么,也不知道这是否被允许。非常感谢您的帮助 public ItemListBaseAdapter(Context context, ArrayList < ItemDetails > results) { itemDetailsrrayList = results; l_Inflater = LayoutInflat

您好,提前谢谢

有没有办法改变特定单元格的背景颜色?即按索引编号?我试图通过添加一个-if(position==3)来修改下面的教程代码。不知道我做错了什么,也不知道这是否被允许。非常感谢您的帮助

public ItemListBaseAdapter(Context context, ArrayList < ItemDetails > results) {
    itemDetailsrrayList = results;
    l_Inflater = LayoutInflater.from(context);
}

public int getCount() {
    return itemDetailsrrayList.size();
}

public Object getItem(int position) {
    return itemDetailsrrayList.get(position);
}

public long getItemId(int position) {
    return position;
}

public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder holder;
    if (convertView == null) {
        convertView = l_Inflater.inflate(R.layout.item_details_view, null);
        holder = new ViewHolder();
        holder.txt_itemName = (TextView) convertView.findViewById(R.id.name);
        holder.txt_itemDescription = (TextView) convertView.findViewById(R.id.itemDescription);
        //  holder.txt_itemPrice = (TextView) convertView.findViewById(R.id.price);
        holder.itemImage = (ImageView) convertView.findViewById(R.id.photo);

        convertView.setTag(holder);
    } else {
        holder = (ViewHolder) convertView.getTag();
    }

    ////////////////////////////  TEST CODE - Header cells ////////////////


      if(position == 2){
      convertView.setBackgroundColor(android.R.color.background_light);
  }

    if (position == 3) {
         convertView.setBackgroundColor(android.R.color.background_light);
    }
    if (position == 14) {
         convertView.setBackgroundColor(android.R.color.background_light);
    }
    /////////////////////////////////////


    holder.txt_itemName.setText(itemDetailsrrayList.get(position).getName());
    holder.txt_itemDescription.setText(itemDetailsrrayList.get(position).getItemDescription());
    // holder.txt_itemPrice.setText(itemDetailsrrayList.get(position).getPrice());
    holder.itemImage.setImageResource(imgid[itemDetailsrrayList.get(position).getImageNumber() - 1]);

    return convertView;
}
公共ItemListBaseAdapter(上下文上下文,ArrayListresults){ ItemDetailsRayList=结果; l_Inflater=从(上下文)开始的布局更平坦; } public int getCount(){ return itemtailsrraylist.size(); } 公共对象getItem(int位置){ 返回ItemDetailsRayList.get(位置); } 公共长getItemId(int位置){ 返回位置; } 公共视图getView(int位置、视图转换视图、视图组父视图){ 视窗座; if(convertView==null){ convertView=l\u充气机。充气(R.layout.item\u details\u视图,空); holder=新的ViewHolder(); holder.txt_itemName=(TextView)convertView.findViewById(R.id.name); holder.txt_itemsdescription=(TextView)convertView.findViewById(R.id.itemsdescription); //holder.txt_itemPrice=(TextView)convertView.findViewById(R.id.price); holder.itemImage=(ImageView)convertView.findViewById(R.id.photo); convertView.setTag(支架); }否则{ holder=(ViewHolder)convertView.getTag(); } ////////////////////////////测试代码-标题单元格//////////////// 如果(位置==2){ convertView.setBackgroundColor(android.R.color.backgroundlight); } 如果(位置==3){ convertView.setBackgroundColor(android.R.color.backgroundlight); } 如果(位置==14){ convertView.setBackgroundColor(android.R.color.backgroundlight); } ///////////////////////////////////// holder.txt_itemName.setText(itemdailsrraylist.get(position.getName()); holder.txt_itemsdescription.setText(itemtailsrraylist.get(position.getitemsdescription()); //holder.txt_itemPrice.setText(itemtailsrraylist.get(position.getPrice()); holder.itemImage.setImageResource(imgid[itemDetailsRayList.get(position.getImageNumber()-1]); 返回视图; }
据我所知,中没有挫折()(如果这是您继承的)。如果setBackground()是您创建的一个方法,我不明白如果您不将其作为参数传递,如何设置特定视图的颜色。您不想调用convertView吗。相反?

据我所知,没有挫折()(如果这是你继承的)。如果setBackground()是您创建的一个方法,我不明白如果您不将其作为参数传递,如何设置特定视图的颜色。您不想调用convertView吗。相反?

对于其他初学者来说,将此代码段添加到getView()对我来说是有效的。希望它能帮助别人

 if(position == 0 || position == 7 || position == 9 || position == 15 ){


      convertView.setBackgroundColor(Color.DKGRAY);
  }
  else
  {
      convertView.setBackgroundColor(Color.BLACK);
  }

对于任何其他初学者来说,将此代码段添加到getView()对我来说都是有效的。希望它能帮助别人

 if(position == 0 || position == 7 || position == 9 || position == 15 ){


      convertView.setBackgroundColor(Color.DKGRAY);
  }
  else
  {
      convertView.setBackgroundColor(Color.BLACK);
  }