2016-05-07 3 views
0

ここに私のコードがあります。なぜなら、ArrayAdapterを継承しているCustomAdapterのメソッドを追加または削除するときはいつも、データが常に削除される理由がわかりません。どのようにListViewの要素を追加または削除するときにListViewによるデータの削除を防止できますか?

public class SetFragment extends Fragment { 

private CustomAdapter listAdapter = null; 
@Nullable 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View view = inflater.inflate(R.layout.set_fragment , container , false); 


    List<String> num_set= new ArrayList<>(); 
    num_set.add("Set1"); 

    listAdapter = new CustomAdapter(getActivity(), num_set); 
    ListView listView = (ListView)view.findViewById(R.id.setListView); 
    listView.setAdapter(listAdapter); 


    listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { 
     @Override 
     public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) { 
      listAdapter.remove(listAdapter.getItem(position)); 
      listAdapter.notifyDataSetChanged(); 
      return false; 
     } 
    }); 
    return view; 
} 

public void addListData(String entry) { 
    int numsets = listAdapter.getCount()+1; 
    listAdapter.add(entry+numsets); 
} 

}

public class CustomAdapter extends ArrayAdapter<String> { 

public CustomAdapter(Context context, List<String> num_set) { 
    super(context, R.layout.custom_row_for_set ,num_set); 
} 


@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    LayoutInflater buclysInflater = LayoutInflater.from(getContext()); 
    View CustomView = buclysInflater.inflate(R.layout.custom_row_for_set ,parent , false); 

    String setNum = getItem(position); 
    TextView setText = (TextView)CustomView.findViewById(R.id.setTExtView); 

    setText.setText(setNum); 
    return CustomView; 
} 

}

私は追加設定]ボタンをクリックすると、データがちょうどaway.Iがそれを維持したい行きます。 どうすればいいですか? 添付写真を見ることができます。

the pic1

pic 2

+0

データを保存したい場合は、SQLiteを使用することを検討してください。 –

+0

ええ、それをしようとする@ – RegJo

答えて

1

あなたaddListData()方法でlistAdapter.notifyDataSetChanged();を追加します。

+0

それは私の状況で動作しません。 – RegJo

関連する問題