我設置一個ArrayAdapter這樣的:設置一個TextView文字顏色改變全的ListView項目顏色
@NonNull
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = convertView;
if(view == null){
LayoutInflater layoutInflater = LayoutInflater.from(getContext());
view = layoutInflater.inflate(R.layout.row_product_item, null);
}
TextView txtProductName = (TextView)view.findViewById(R.id.txt_product_name);
TextView txtProductRemaining = (TextView)view.findViewById(R.id.txt_product_remaining);
TextView txtProductPrice = (TextView)view.findViewById(R.id.txt_product_sale_price);
String productName = getItem(position).productName;
String productRemaining = Number.floatToStringAsNumber(getItem(position).productRemaining);
String productPrice = Number.floatToStringAsPrice(getItem(position).productSellPrice, true);
txtProductName.setText(productName);
txtProductRemaining.setText(productRemaining);
txtProductPrice.setText(productPrice);
/**
* Coloring
*/
if (getItem(position).productRemaining <= 0){
txtProductRemaining.setTextColor(Color.parseColor("#ff7f7f"));
}
return view;
}
只要在最後一行的評價返回true,它描繪每一個txtProductRemaining。我只需要繪製評估項目。爲什麼它繪製了整套元素?
ü確保您若條件? –
是的。作爲@ A.A。被修改的,每當它發生變化時,整個適配器將永久設置。所以我必須添加'其他'條件 – chntgomez