小さな買い物リストアプリを作っています。このアプリでは、リストビューのアイテムが購入済みとしてマークされている場合、そのアイテムはラインと交差します。私の問題は、リストが最初に表示されたときに、リスト内で購入済みとマークされているアイテムがあれば、最初のアイテムは買われたとしてマークされているように見えます。それは私の配列アダプタリストビューの最初の項目が正しく表示されない
public class ListAdapter extends BaseAdapter{
Context context;
ArrayList<List_Item> items;
public ListAdapter(Context context, ArrayList<List_Item> list){
this.context = context;
items = list;
}
@Override
public int getCount() {
if(items != null)
return items.size();
else
return 0;
}
@Override
public Object getItem(int index) {
return items.get(index);
}
@Override
public long getItemId(int index) {
return 0;
}
@Override
public View getView(int pos, View convertView, ViewGroup parent) {
View view = convertView;
Holder holder = new Holder();
if(convertView == null){
view = LayoutInflater.from(context).inflate(R.layout.complex_list_item, parent, false);
}
holder.main = (TextView)view.findViewById(R.id.LItextView1);
holder.second = (TextView)view.findViewById(R.id.LItextView2);
List_Item item = items.get(pos);
holder.main.setText(item.name);
holder.second.setText(item.qtyToBuy + " " + item.unit + "(s) @ $" + item.price
+ " per " + item.unit.toLowerCase());
if(item.bought){
holder.main.setBackgroundResource(R.drawable.strikeout);
}
return view;
}
class Holder{
TextView main;
TextView second;
}
}
ため
コードは、なぜこの出来事である必要があるとして、最初の項目が表示さを買って何の項目がマークされていない場合
?どうすればこの問題を解決できますか?どんな提案も大歓迎です。
あなたはあなたがクリックしてそれらをクロス購入しました? –
はい、この問題は、アイテムをクリックしているときではなく、ファイルから保存したデータを表示しているときに発生します – user11559