对不起我的英语我是法国人^^
所以,我有一个小问题要问你!
我想在 listView 中显示一个隐藏按钮,但是当代码显示所有按钮(不仅仅是一个)时。
看看我的代码:
public class ListViewShoplistAdapter extends BaseAdapter {
private ArrayList<Product> listCategory;
private Activity activity;
private ShopList shoplist;
public ListViewShoplistAdapter(Activity activity,ArrayList<Product> listCategory, ShopList shoplist) {
super();
this.activity = activity;
this.listCategory = listCategory;
this.shoplist = shoplist;
}
public int getCount() {
return listCategory.size();
}
public Product getItem(int position) {
return listCategory.get(position);
}
public long getItemId(int position) {
return position;
}
private class ViewHolder {
public TextView productName;
public TextView productPrice;
public TextView productBrand;
public ImageView product;
public Button changeQuantity;
public RelativeLayout background;
}
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder view;
LayoutInflater inflator = activity.getLayoutInflater();
if(convertView == null) {
view = new ViewHolder();
convertView = inflator.inflate(R.layout.listviewshoplist, parent, false);
view.productName = (TextView) convertView.findViewById(R.id.name);
view.productPrice = (TextView) convertView.findViewById(R.id.price);
view.productBrand = (TextView) convertView.findViewById(R.id.brand);
view.changeQuantity = (Button) convertView.findViewById(R.id.changequantity);
view.background = (RelativeLayout) convertView.findViewById(R.id.relativeLayout1);
view.product = (ImageView) convertView.findViewById(R.id.imgproduct);
convertView.setTag(view);
}else {
view = (ViewHolder) convertView.getTag();
}
String productName = listCategory.get(position).getName();
view.productName.setText(productName);
if (position==0){ // JUST for the first position, display the changeQuantity button ! => Button is displayed for all rows...
view.changeQuantity.setVisibility(View.VISIBLE);
}
String price = String.valueOf(listCategory.get(position).getPrice())+"€";
view.productPrice.setText(price);
return convertView;
}
}
感谢您的帮助 !