0
ArrayAdapter 클래스에 문제가 있습니다. 문제는 항목이 refrigeratorItemList에서 바로 제거되지만 UI에 반영되지 않는다는 것입니다. 보기에서 활동에서 제거 된 항목과 상관없이 마지막 항목 만 제거됩니다.목록보기 - 항목 제거가 올바르게보기에 반영되지 않았습니다.
Activity.java (중요한 부분) :
m_adapter.remove(m_adapter.getItem(id));
m_adapter.notifyDataSetChanged();
RefrigeratorItemAdapter.java :
public class RefrigeratorItemAdapter extends ArrayAdapter<RefrigeratorItem> {
private List<RefrigeratorItem> refrigeratorItemList;
public RefrigeratorItemAdapter(Context context, int textViewResourceId,
List<RefrigeratorItem> list) {
super(context, textViewResourceId, list);
this.refrigeratorItemList = list;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater) getContext().getSystemService(
Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.simple_list_item_1, null);
RefrigeratorItem i = (RefrigeratorItem) getItem(position);
System.out.println(i.toString());
if (i != null) {
TextView tt = (TextView) v.findViewById(R.id.text1);
tt.setText(i.getProductname());
}
}
return v;
}
public void remove(RefrigeratorItem object) {
super.remove(object);
this.refrigeratorItemList.remove(object);
System.out.println(Arrays.toString(refrigeratorItemList.toArray()));
}
}
감사합니다!
도움과 설명에 진심으로 감사드립니다! – user1259201